Capacitance order intelligent production scheduling system based on delivery cycle
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- DINGRONG TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2026-05-18
- Publication Date
- 2026-08-07
AI Technical Summary
在多规格电容订单并行生产条件下,客户交付周期持续压缩,老化架数量与终检工位数量均为固定配置,不同规格订单又需要共享后段处理资源,而前段卷绕、含浸等工序仍可提前投入,在此情况下,现有排产方式虽然能够持续更新订单优先级和资源分配结果,但其判断依据主要集中于订单当前是否具备开工条件以及当前资源是否存在可用余量,未能进一步判断某一订单自当前时点起至承诺交付时点止,是否仍然保有一条能够连续完成老化、终检及放行处理的执行路径,由此导致部分订单在接单测算阶段仍被判定为可以按期完成,前段工序亦已按排产结果正常投入,但在后续多轮顺排或重排过程中,老化位和终检位逐步被其他订单占用后,该部分订单虽未改变名义交期,系统也未提前给出失约判定,实际上却已失去在承诺时点前完成后段处理的条件,延期风险往往直至临近交付节点时才集中显现;
Smart Images

Figure CN122529327A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of order scheduling and production planning technology, and more specifically, to an intelligent scheduling system for capacitor orders based on delivery cycles. Background Technology
[0002] In capacitor order scheduling, existing technologies mainly revolve around the goal of on-time delivery. They typically integrate information such as order delivery deadline, material availability, equipment load, process cycle time, aging resource usage, and final inspection capabilities, and use planning and scheduling systems and big data processing methods to adjust the order release sequence, equipment task allocation, and production rhythm. Under the condition of parallel production of multi-specification capacitor orders, the customer delivery cycle is continuously compressed. The number of aging racks and final inspection stations are fixed. Different specifications of orders need to share downstream processing resources, while the upstream winding, impregnation and other processes can still be put in advance. Under these circumstances, although the existing production scheduling method can continuously update the order priority and resource allocation results, its judgment is mainly based on whether the order is currently ready to start and whether there is available spare resources. It fails to further determine whether a certain order still has an execution path that can continuously complete aging, final inspection and release processing from the current time to the promised delivery time. As a result, some orders are still judged to be able to be completed on time during the order calculation stage, and the upstream processes have been put into normal operation according to the production scheduling results. However, in the subsequent multiple rounds of sequential or rescheduling, after the aging and final inspection stations are gradually occupied by other orders, although the nominal delivery date of these orders has not changed and the system has not given a default judgment in advance, they have actually lost the conditions to complete the downstream processing before the promised time. The risk of delay often only becomes apparent when the delivery node is close. Therefore, the technical problem to be solved by this application is: how to identify whether the on-time completion path of an order between the current time and the promised delivery time has been interrupted during the intelligent scheduling process of capacitor orders based on big data processing. Summary of the Invention
[0003] To overcome the aforementioned deficiencies of the prior art, embodiments of the present invention provide an intelligent scheduling system for capacitor orders based on delivery cycles. This system solves the problems mentioned in the background art by constructing a completion channel for capacitor orders before the delivery time, locating channel breakpoints, and performing breakpoint repair scheduling.
[0004] To achieve the above objectives, the present invention provides the following technical solution: an intelligent production scheduling system for capacitor orders based on delivery cycles, comprising: The order modeling module is used to pair the start time and delivery time of each capacitor order, determine the production scheduling range of the corresponding capacitor order, and generate the order base table. The production line mapping module is used to arrange the occupied time slots of each resource location in chronological order within the production scheduling cycle, and determine the idle sequence of each resource location based on the time interval between adjacent occupied time slots, and generate a resource time slot table. The channel generation module, for each capacitor order, according to the production scheduling interval in the order base table and the idle sequence in the resource time period table, sequentially matches the idle time period that is continuously connected to the completion time of the previous processing position according to the processing order of the capacitor order, and connects the matched idle time periods in sequence to generate the completion channel of the corresponding capacitor order. The breakpoint location module is used to compare the end completion time of the completion channel with the delivery time of the corresponding capacitor order. When the end completion time is later than the delivery time, it checks the connection status between each adjacent idle time period from the end of the completion channel backwards, and determines the first processing position that cannot maintain continuous connection as the channel breakpoint, and generates the breakpoint result. The production scheduling repair module determines the target orders whose final completion time is still no later than their delivery time after being moved from the occupancy sequence corresponding to the channel breakpoint, based on the breakpoint results. It then adjusts the occupancy time period corresponding to the target orders to the first continuously connectable idle time period after the channel breakpoint and regenerates the completion channel for capacitor orders with channel breakpoints, thus obtaining the order scheduling results.
[0005] In a preferred embodiment, the execution of the order modeling module includes: Compare the entry time and the completion time for each capacitor order. If the entry time is later than the completion time, the entry time is determined as the starting time. If the completion time is later than the entry time, the completion time is determined as the starting time. If the entry time and the completion time are the same, the same time is determined as the starting time. The production scheduling range for the capacitor order is determined based on the start date and delivery date, and the scheduling duration for the capacitor order is determined based on the calculation result of subtracting the start date from the delivery date. The order base table is generated by associating the start date, delivery date, production interval, and available time for each capacitor order with corresponding information and sorting them in ascending order of delivery date. If the delivery dates are the same, they are sorted in ascending order of start date.
[0006] In a preferred embodiment, the execution of the production line mapping module includes: Arrange the occupied time periods corresponding to each resource location within the production scheduling cycle in ascending order of start time, and in the case of the same start time, arrange them in ascending order of end time to obtain the occupied sequence corresponding to each resource location. For two adjacent occupied time periods in the same occupied sequence, compare them before and after. If the start time of the later occupied time period is later than the end time of the earlier occupied time period, the time period from the end time of the earlier occupied time period to the start time of the later occupied time period is determined as the interval period.
[0007] In a preferred embodiment, the execution of the production line mapping module further includes: The start time of the production scheduling cycle is compared with the start time of the first occupied time period in the occupied sequence. If the start time of the first occupied time period is later than the start time of the production scheduling cycle, the time from the start time of the production scheduling cycle to the start time of the first occupied time period is determined as the interval period. The end time of the last occupied time period in the occupied sequence is compared with the end time of the production scheduling cycle. If the end time of the production scheduling cycle is later than the end time of the last occupied time period, the time from the end time of the last occupied time period to the end time of the production scheduling cycle is determined as the interval period. Arrange the time intervals corresponding to each resource location in chronological order to obtain the idle sequence corresponding to each resource location, and associate the occupied sequence and idle sequence corresponding to each resource location to generate a resource time interval table.
[0008] In a preferred embodiment, the execution of the channel generation module includes: For each capacitor order, read the production scheduling interval in the order base table and the idle sequence in the resource time period table. Take the start of the production scheduling interval as the entry time of the first processing position and the completion time of the previous processing position as the entry time of the next processing position. Extract all idle time periods in the idle sequence corresponding to the current processing position whose start time is not earlier than the entry time and whose end time is not later than the end of the production scheduling interval to form the candidate segment set of the current processing position. For each candidate idle time period in the candidate segment set, read the corresponding idle sequence bit by bit along the remaining processing order of the capacitor order. When there is an idle time period whose start time is not earlier than the completion time of the previous processing position, take the first idle time period after the start time is sorted in ascending order as the matching idle time period of the current remaining processing position, and calculate the waiting time between the completion time of the previous processing position and the start time of the matching idle time period of the current remaining processing position. When there is no idle time period that meets the conditions in the current remaining processing position, write the candidate idle time period into the blocking record and stop reading. When all remaining processing positions form matching idle time periods, write the candidate idle time period and the corresponding matching idle time periods into the connection record.
[0009] In a preferred embodiment, the execution of the channel generation module further includes: For each candidate idle time period in the connection record, the upper limit value, total waiting time, remaining time between the completion time of the last processing position and the end of the production interval, and the total value of the difference between adjacent waiting times are calculated. The idle time periods are then sorted in ascending order of upper limit value, ascending order of total waiting time, descending order of remaining time, ascending order of total value of difference between adjacent waiting times, and ascending order of the start time of the candidate idle time period. The matching idle time periods corresponding to the first candidate idle time period are taken as the matching results of the current capacitor order, and the matching results are written to the locked record.
[0010] In a preferred embodiment, the execution of the channel generation module further includes: If there is no through record at the current processing position, write the current processing position to the rollback record and release the matching result of the locked record already written in the previous processing position. After deleting the candidate idle time period corresponding to the matching result in the candidate segment set of the previous processing position, re-execute the candidate segment set formation, blocking record writing, through record writing and locking record writing. If there is no candidate idle time period after deleting the candidate idle time period corresponding to the matching result in the previous processing position, continue to write the rollback record to the previous processing position until the current processing position forms a matching result or the first processing position is written to the rollback record. After matching results are formed for the idle sequences corresponding to each processing position, the idle time periods obtained by matching are connected in order of processing sequence to generate the completion channel of the corresponding capacitor order. The idle time periods in the completion channel are written into the occupied sequence in the resource time period table. When the first processing position is written into the rollback record, the capacitor order is written into the uncompleted record.
[0011] In a preferred embodiment, the execution of the breakpoint location module includes: The end completion time of the completion channel for each capacitor order is compared with the delivery time of the capacitor order. If the end completion time is later than the delivery time, the idle time periods in the completion channel are extracted and arranged in reverse order of processing sequence to form a positioning sequence. For two adjacent idle time periods in the positioning sequence, the end time of the previous idle time period is compared with the start time of the next idle time period. If the start time of the next idle time period is earlier than or equal to the end time of the previous idle time period, the connection state between the two adjacent idle time periods is determined to be continuous. If the start time of the next idle time period is later than the end time of the previous idle time period, the connection state between the two adjacent idle time periods is determined to be interrupted.
[0012] In a preferred embodiment, the execution of the breakpoint location module further includes: Read the connection status between each pair of adjacent idle time periods in reverse order along the positioning sequence. When the connection status is continuous, continue reading the previous two adjacent idle time periods. When the connection status is interrupted, determine the processing bit corresponding to the next idle time period after the first interrupted connection status during the reverse reading process as the channel breakpoint, and determine the breakpoint time difference by subtracting the end time of the previous idle time period from the start time of the next idle time period. The breakpoint is generated by associating the channel breakpoint, breakpoint time difference, end completion time, and delivery time.
[0013] In a preferred embodiment, the execution of the production scheduling repair module includes: Based on the breakpoint results, read the occupied sequence corresponding to the channel breakpoint and the idle sequence after the channel breakpoint. Place each occupied time period in the occupied sequence into the idle time periods arranged in chronological order after the channel breakpoint. Calculate the end time after the occupied time period is placed. If the end time is earlier than or equal to the delivery time of the corresponding order, the corresponding order is determined as the target order. After determining the target orders, calculate the difference between the delivery time of each target order and the end time after its occupied time period is inserted, and sort them in descending order according to the difference. If the difference is the same, sort them in ascending order according to the start time of the occupied time period corresponding to the target order. Take the target order with the first position in the sorted order, adjust the occupied time period corresponding to the target order to the first continuously connected idle time period after the channel breakpoint, and write the adjusted start time and end time of the occupied time period into the occupied sequence corresponding to the channel breakpoint. After completing the time period adjustment, the completion channel generation is re-executed for capacitor orders with channel breakpoints. The end completion time of the regenerated completion channel is compared with the delivery time. If the end completion time is earlier than or equal to the delivery time, the repaired order scheduling result is output. If the end completion time is later than the delivery time, the breakpoint result is retained and the current order scheduling result is output.
[0014] The technical effects and advantages of this invention are as follows: By constructing a completion channel for capacitor orders before the delivery time, and combining the final completion time, delivery time, and connection status of adjacent idle periods to determine the channel breakpoint, it is possible to identify whether the on-time completion path has been interrupted during the production scheduling stage, thereby relatively suppressing the situation where the risk of delays only concentrates near the delivery node. By unifying the entry time, kitting time, and delivery time into the production scheduling interval, and further forming an order base table, the actual starting point of an order entering production scheduling can be correlated with the delivery boundary, thereby improving the problem of distortion of the starting boundary caused by sorting only based on nominal delivery dates; By sorting and merging the occupied time slots of each resource location and solving the idle sequence, a resource time slot table corresponding to the production scheduling cycle can be formed, so that the subsequent processing position matching is based on the actual available time slots, and the interference of unclear resource boundaries on the production scheduling results is reduced. By forming a continuous record for each candidate idle time period along the processing order, and sorting the matching results according to waiting time, remaining time and waiting fluctuation, it is possible to meet the continuous connection while taking into account the subsequent surplus distribution, thereby relatively improving the situation where local areas can be arranged but the overall connection is difficult to achieve. By filtering out target orders that still meet the delivery boundary after being moved from the occupancy sequence corresponding to the channel breakpoint, and adjusting their occupancy period to a continuously connectable idle period after the breakpoint, the critical resources at the breakpoint location can be released, thereby improving the effectiveness of breakpoint repair to a certain extent. By regenerating the completion channel after adjusting the occupied time period and re-verifying the relationship between the end completion time and the delivery time, the repair results can be reviewed, thereby relatively reducing the risk of only partially relocating the order but destroying the delivery boundary of the relocated order itself. Attached Figure Description
[0015] Figure 1 This is a schematic diagram of the system modules of the present invention. Detailed Implementation
[0016] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0017] Refer to the instruction manual appendix Figure 1 The intelligent scheduling system for capacitor orders based on delivery cycle of the present invention includes: The order modeling module is used to pair the start time and delivery time of each capacitor order, determine the production scheduling range of the corresponding capacitor order, and generate the order base table. In this implementation, the actual starting point for production scheduling of capacitor orders is first determined, and then the corresponding production scheduling interval and available scheduling time are formed by combining the delivery time. These are then organized in a unified order into an order base table for subsequent processing. The entry time, kitting time, and delivery time all use absolute time values on the same time axis. The kitting time is the time when all necessary materials for the capacitor order simultaneously meet the input conditions. When a necessary material has multiple arrival records, the last time when all necessary materials simultaneously meet the input conditions is taken as the kitting time. Based on this, the entry time and kitting time are compared to determine the starting scheduling time for the capacitor order. Then, the production scheduling interval is determined based on the starting scheduling time and the delivery time, and the available scheduling time is calculated. Finally, the corresponding results are organized into an order base table. The implementation process includes the following steps: For each capacitor order, first read the entry time and the assembly time of the order, and convert them into absolute time values in the same time unit. The entry time is the moment when the capacitor order enters the production scheduling system and completes the order registration, and the assembly time is the moment when all the necessary materials for the capacitor order simultaneously meet the conditions for input. If the entry time is later than the assembly time, the entry time is determined as the starting time for production scheduling; if the assembly time is later than the entry time, the assembly time is determined as the starting time for production scheduling; if the entry time and the assembly time are the same, the same time is determined as the starting time for production scheduling. Before the entry time, the capacitor order has not yet entered the production scheduling scope; before the assembly time, the capacitor order has been entered but cannot be put into production. Therefore, the starting time for production scheduling is the later of the two times. After the initial scheduling time is determined, the delivery time corresponding to the capacitor order is read, and the time interval from the initial scheduling time to the delivery time is determined as the production scheduling interval for the capacitor order. Then, the available scheduling time for the capacitor order is determined by subtracting the initial scheduling time from the delivery time. The starting point of the production scheduling interval is the initial scheduling time, the ending point of the interval is the delivery time, and the available scheduling time is the time difference between the ending point and the starting point of the interval. When the delivery time is expressed as a combination of date and time, it is first converted to an absolute time value before the subtraction operation is performed. Thus, the time range from when the capacitor order enters the production scheduling process to when it should be delivered is fixed, and all subsequent processing is carried out within this production scheduling interval. After the above results are generated, the start time, delivery time, production interval, and available production time for each capacitor order are associated to form a record structure with a set of basic production scheduling fields corresponding to each capacitor order. Then, the orders are first sorted in ascending order by delivery time, and if the delivery times are the same, they are sorted in ascending order by start time to obtain the order arrangement result according to the delivery order. When both the delivery time and start time are the same, they are sorted in ascending order by order number to ensure that the arrangement result is unique, and finally, an order base table is generated. In the generated order base table, each record corresponds to the start boundary, delivery boundary, and available production time for a capacitor order, and subsequent processing can directly read this table. Through the above processing, the start time, production interval, available scheduling duration and order arrangement order are formed sequentially, and the fields before and after are consistent. When calling them later, it is not necessary to re-compare or convert the original order records. In practical applications: For example, if a capacitor order is entered at 08:30 on April 15, 2026, the last required material reaches its production condition at 10:00 on April 15, 2026, and the delivery time is 18:00 on April 18, 2026, then 10:00 on April 15, 2026 is determined as the starting time for scheduling, the period from 10:00 on April 15, 2026 to 18:00 on April 18, 2026 is determined as the scheduling interval, and the time difference between the two is determined as the available scheduling time; if another capacitor order... If the entry time for the capacitor order is 11:00 AM on April 15, 2026, the completion time is 9:30 AM on April 15, 2026, and the delivery time is 6:00 PM on April 18, 2026, then the starting time for the other capacitor order is determined to be 11:00 AM on April 15, 2026. If the delivery times for the two orders are the same, first arrange the capacitor orders with a starting time of 10:00 AM on April 15, 2026, and then arrange the capacitor orders with a starting time of 11:00 AM on April 15, 2026, and generate the order base table accordingly.
[0018] The production line mapping module is used to arrange the occupied time slots of each resource location in chronological order within the production scheduling cycle, and determine the idle sequence of each resource location based on the time interval between adjacent occupied time slots, and generate a resource time slot table. In this implementation, the time periods for which each resource location has been occupied within the production scheduling cycle are first organized uniformly. Then, the interval time periods available for subsequent matching are extracted from the time periods occupied. Finally, the occupied sequence and idle sequence corresponding to each resource location are formed, and the two are associated as a resource time period table. The start and end points of the production scheduling cycle are consistent with the time axis used in order modeling, and both use absolute time values under the same time unit. The resource location is the specific execution location after the processing position and equipment location are mapped. The occupied time period is the execution time period that has been determined for the resource location within the production scheduling cycle. For occupied time periods whose start time is earlier than the start time of the production scheduling cycle or whose end time is later than the end time of the production scheduling cycle, the intersection with the production scheduling cycle is first extracted, and then it participates in subsequent processing. For overlapping occupied time periods under the same resource location whose start time is earlier than the end time of the previous occupied time period, they are first merged into a continuous occupied time period, and then sorting and interval calculation are performed. The implementation process includes the following steps: First, for each resource location within the production schedule, all occupied time periods are read, including their start and end times. These periods are then sorted in ascending order of start time, and in cases where start times are the same, they are sorted in ascending order of end time, resulting in the occupation sequence for that resource location. Before sorting, overlapping occupied time periods at the same resource location are merged. During merging, the time with the earlier start time among the overlapping occupied time periods is taken as the start time of the merged occupied time period, and the time with the later end time is taken as the end time of the merged occupied time period. This avoids duplicate occupation or negative intervals at the same resource location from entering subsequent calculations. In the sorted occupation sequence, the occupied time periods are arranged sequentially according to time. Subsequent interval time periods are then solved segment by segment based on this occupation sequence. Subsequently, two adjacent occupied time periods in the same occupied sequence are compared one after the other, and the end time of the previous occupied time period is compared with the start time of the next occupied time period. When the start time of the next occupied time period is later than the end time of the previous occupied time period, the time from the end time of the previous occupied time period to the start time of the next occupied time period is determined as an interval period. When the start time of the next occupied time period is equal to the end time of the previous occupied time period, no interval period is formed. When the start time of the next occupied time period is earlier than the end time of the previous occupied time period, the two occupied time periods have already been merged in the previous process, so no separate interval period is generated. Through this process, the unoccupied time intervals between two adjacent occupied time periods are extracted one by one, and the subsequent free sequence is formed based on these interval periods. Furthermore, the starting point of the production scheduling cycle is compared with the starting time of the first occupied time period in the occupancy sequence. If the starting time of the first occupied time period is later than the starting point of the production scheduling cycle, the period from the starting point of the production scheduling cycle to the starting time of the first occupied time period is determined as the starting interval period. At the same time, the ending time of the last occupied time period in the occupancy sequence is compared with the ending time of the production scheduling cycle. If the ending time of the production scheduling cycle is later than the ending time of the last occupied time period, the period from the ending time of the last occupied time period to the ending time of the production scheduling cycle is determined as the ending interval period. When a resource location has no occupied time period within the production scheduling cycle, the entire time interval from the starting point to the ending point of the production scheduling cycle is directly determined as a single interval period for that resource location. After this processing, the unoccupied portion at the beginning of the production scheduling cycle, the unoccupied portion between adjacent occupied time periods, and the unoccupied portion at the end of the production scheduling cycle are all included in the same interval period set, without omitting boundary intervals. After all the aforementioned time intervals are formed, the time intervals corresponding to each resource location are sorted in ascending order by start time, and if the start times are the same, they are sorted in ascending order by end time to obtain the idle sequence corresponding to each resource location. Then, the occupied sequence and the idle sequence corresponding to the resource location are associated one-to-one according to the resource location to generate a resource time interval table. In the resource time interval table, each resource location corresponds to a set of occupied sequence and a set of idle sequence. The occupied sequence is used to indicate the execution time interval that has been locked within the production scheduling cycle for the resource location, and the idle sequence is used to indicate the candidate time interval that has not been occupied within the production scheduling cycle for the resource location. When the channel is generated later, the idle sequence of the corresponding resource location is read according to the processing order based on the resource time interval table and the matching is performed. Through the above processing, the occupied time slots of each resource location within the production scheduling cycle are first organized into a unique occupied sequence, and then the occupied sequence is used to extract the clear-ordered idle sequence, finally forming a resource time slot table that can directly participate in subsequent time slot matching; among them, occupied time slots spanning multiple production scheduling cycles are first extracted, overlapping occupied time slots are first merged, and complete interval time slots are directly generated for resource locations without occupied time slots. In practical applications: For example, if a resource location has three occupied time slots within the production scheduling cycle from 8:00 to 20:00, namely 8:30 to 9:30, 10:00 to 11:00, and 13:00 to 15:00, then first obtain the occupied sequence in ascending order of the starting time. Then, compare two adjacent occupied time slots to obtain two intervals: 9:30 to 10:00 and 11:00 to 13:00. Continuing to compare the starting time of the production scheduling cycle, 8:00, with the starting time of the first occupied time slot, 8:30, we can obtain... The starting interval period from 8:00 to 8:30 is then compared with the end time of the last occupied period at 15:00 and the end time of the production cycle at 20:00 to obtain the ending interval period from 15:00 to 20:00. Finally, the idle sequence corresponding to this resource location is 8:00 to 8:30, 9:30 to 10:00, 11:00 to 13:00, and 15:00 to 20:00. After being associated with the occupied sequence of this resource location, a resource time period table is formed, which can be directly called for subsequent channel generation.
[0019] The channel generation module, for each capacitor order, according to the production scheduling interval in the order base table and the idle sequence in the resource time period table, sequentially matches the idle time period that is continuously connected to the completion time of the previous processing position according to the processing order of the capacitor order, and connects the matched idle time periods in sequence to generate the completion channel of the corresponding capacitor order. In this implementation, firstly, within the production scheduling range given in the order base table, a set of idle time slots that can be sequentially connected is extracted from the resource time slot table for each capacitor order, processing position by processing position. When multiple feasible sequential paths exist, one set is selected as the matching result according to a unified calculation method, and a completion channel is formed accordingly. Each capacitor order corresponds to a pre-defined processing sequence, determined by the process route corresponding to that capacitor order. Each processing position corresponds to at least one resource location, and the processing time for each processing position is determined based on the process requirements of the capacitor order at that processing position. The idle time slots in the resource time slot table... The idle sequence is recorded separately according to the resource position. When reading the idle sequence of a certain processing position, the idle time periods corresponding to each resource position under that processing position are first collected, and then sorted in ascending order by start time. If the start times are the same, they are sorted in ascending order by end time to form the idle sequence that can be read by that processing position. Whether an idle time period can be used for the current processing position requires not only that its start time meets the entry time requirement, but also that the length of the idle time period is not less than the processing time of the current processing position. The length of the time period is the end time minus the start time. The completion time of the current processing position is the start time of the matching idle time period plus the processing time of the processing position. The implementation process includes the following steps: First, for each capacitor order, the production scheduling interval in the order base table is read, and each processing position is processed sequentially according to the processing order of the capacitor order. For the first processing position, the start point of the production scheduling interval is determined as the entry time. For any processing position after the first processing position, the completion time of the previous processing position is determined as the entry time. Then, the idle sequence corresponding to the current processing position is read, and the start time, end time, and duration of each idle time period are checked one by one. If the start time of the idle time period is not earlier than the entry time, the end time of the idle time period is not later than the end point of the production scheduling interval, and the duration of the idle time period is not less than the processing time of the current processing position, the idle time period is determined as the candidate idle time period of the current processing position, and the candidate segment set of the current processing position is formed in ascending order of start time. If there are multiple resource positions under the current processing position, the resource position identifier is retained in each candidate idle time period, and the resource position is written back when writing the occupancy sequence later. Thus, all candidate idle time periods that the current processing position can use are limited to the production scheduling interval and correspond to the processing time of the processing position. Subsequently, a continuation path is constructed for each candidate idle time slot in the candidate segment set. Specifically, the start time of the candidate idle time slot is first added to the processing time of the current processing position to obtain the completion time of the current processing position. Then, the idle sequence of the corresponding processing positions is read sequentially along the remaining processing order of the capacitor order. When there is an idle time slot in the current remaining processing position whose start time is not earlier than the completion time of the previous processing position and whose time slot length is not less than the processing time of the current remaining processing position, the first idle time slot after the start times are sorted in ascending order is taken as the matching idle time slot of the current remaining processing position, and the completion time of the current remaining processing position is determined as the start time of the matching idle time slot plus the processing time of the current remaining processing position. The waiting time is determined by subtracting the completion time of the previous processing position from the start time of the matching idle time of the current remaining processing position. When the two are the same, the waiting time is recorded as zero. When there is no matching idle time of the current remaining processing position, the current candidate idle time is written into the blocking record, and the forward reading of the corresponding continuation path of the candidate idle time is stopped. When all remaining processing positions form matching idle time, the candidate idle time and the corresponding matching idle time are associated with each other according to the processing order and written into the through record. After this processing, each through record corresponds to a complete continuation path from the current processing position to the last processing position, and each blocking record corresponds to a continuation path that cannot be extended in the middle. After the connection record is formed, the entire continuation path corresponding to each candidate idle time period in the connection record is quantified. Specifically, first, the upper limit value of all waiting times in the continuation path is calculated, and then the total waiting time is obtained by summing all waiting times. Then, the completion time of the last processing position is read, and the remaining time is obtained by subtracting the completion time of the last processing position from the end of the production interval. Next, two adjacent waiting times are read in pairs according to the processing order, the difference between the second waiting time and the first waiting time is calculated, and the absolute values of each difference are summed to obtain the total value of the difference between adjacent waiting times. After the above values are formed, they are first sorted in ascending order by the upper limit value, and then... When the limit values are the same, they are sorted in ascending order by the total waiting time; when the total waiting time values are the same, they are sorted in descending order by the remaining time; when the remaining time values are the same, they are sorted in ascending order by the total difference between adjacent waiting times; when the total difference between adjacent waiting times is the same, they are sorted in ascending order by the start time of the candidate idle time slot. The matching idle time slots corresponding to the first candidate idle time slot in the sorted list are taken as the matching results corresponding to the current processing position of the capacitor order, and the matching results are written to the lock record. The lock record includes at least the resource position corresponding to each processing position, the start time of the matching idle time slot, the end time of the matching idle time slot, and the completion time, which can be directly called by subsequent rollback and write-back. When there is no continuous record at the current processing position, it means that the existing selections in the candidate segment set of the current processing position cannot form a complete continuation path to the last processing position. In this case, the current processing position is written to the rollback record, and the matching result of the lock record already written to the previous processing position is read. Then, the candidate idle time period corresponding to the matching result is deleted from the candidate segment set of the previous processing position, and the candidate segment set formation, blocking record writing, continuous record writing, and lock record writing are re-executed based on the deleted candidate segment set. If there is still a candidate idle time period in the previous processing position after deleting the candidate idle time period, the continuation is reconstructed backward from the new matching result of the previous processing position. Path; If, after deleting the candidate idle time period, there is no candidate idle time period in the previous processing position, the rollback record will continue to be written to the previous processing position, and the lock record of the processing position before that will be read further, and the rollback will proceed in the same way; until the current processing position forms a new matching result, or the first processing position is written to the rollback record; if the first processing position is written to the rollback record, it means that the capacitor order cannot form a complete successive path in the current production interval; through this rollback process, the matching result that was locked in the previous stage but caused the subsequent stage to be blocked will be unlocked layer by layer and replaced by a new candidate idle time period, until a successive path that can be connected is formed or it is confirmed that it cannot be connected; After matching results are formed for the idle sequences corresponding to each processing position, the matched idle time periods are connected sequentially according to the processing order to generate the completion channel for the corresponding capacitor order. Each segment in the completion channel retains the corresponding processing position, resource position, start time, end time, and completion time. Then, the actual occupied portion corresponding to each idle time period in the completion channel is written into the occupied sequence in the resource time period table. When writing, the start time of the matched idle time period is used as the actual occupied start time, and the completion time is used as the actual occupied end time. The actual occupied portion is then cut off from the original idle sequence, retaining the remaining unoccupied idle portion. After that, the occupied sequence and idle sequence corresponding to the resource position are updated in chronological order. When the first processing position is written to the rollback record, the capacitor order is written to the incomplete record and is not generated into a completion channel in this round of processing. Thus, capacitor orders that form a completion channel will occupy the time period of the corresponding resource position in a timely manner, while incomplete capacitor orders are reserved for subsequent repair or the next round of production scheduling. Through the above processing, each capacitor order first forms a candidate segment set for the current processing position within the production scheduling interval, and then constructs a successive path around the candidate segment set one by one. After that, all the through paths are sorted according to a unified standard to obtain the matching result of the current capacitor order. When the subsequent segment cannot be continued, the previous segment is unlocked and reselected through a rollback process until a complete channel is formed or an incomplete record is formed. The complete channel obtained in this way not only meets the boundary of the production scheduling interval, but also meets the continuous connection requirements of processing time, processing order and resource position of each processing position. Subsequent breakpoint location and production scheduling repair can be directly carried out on this result. In practical applications: For example, the processing order for a capacitor order is winding, impregnation, aging, and final inspection, with a production schedule from 10:00 AM on April 15th to 6:00 PM on April 18th. The winding process takes 40 minutes, impregnation takes 60 minutes, aging takes 24 hours, and final inspection takes 30 minutes. When there are two candidate idle periods in the idle sequence corresponding to winding (10:20 AM to 11:30 AM and 11:00 AM to 12:00 PM), 10:20 AM to 11:30 AM is first considered as a candidate idle period, corresponding to a winding completion time of 11:00 AM. Then, the idle sequence corresponding to impregnation is read. If the first eligible idle period for impregnation is found between 11:10 AM and 12:30 PM, the waiting time is 10 minutes. Then, the idle sequences corresponding to aging and final inspection are read. If both can be found... If a candidate idle period is selected as a successor period, it is written into the continuity record. If 11:00 to 12:00 is selected as another candidate idle period, and the idle sequence corresponding to subsequent aging does not have an idle period that meets the requirements of entry time and processing time, then the candidate idle period is written into the blocking record. After all continuity records are formed, the upper limit of the corresponding waiting time, the total waiting time, the remaining time, and the total value of the difference between adjacent waiting times are sorted, and the successor path corresponding to the first position in the sort is taken as the matching result. If a subsequent processing position cannot form a continuity record, the matching result of the previous processing position that has been written into the lock record is released, and the candidate idle period is deleted and the above process is re-executed. Finally, when the winding, impregnation, aging, and final inspection all form matching results, the corresponding idle periods are connected sequentially to form a completion channel, and the actual occupied part of each segment is written into the occupied sequence of the corresponding resource position.
[0020] The breakpoint location module is used to compare the end completion time of the completion channel with the delivery time of the corresponding capacitor order. When the end completion time is later than the delivery time, it checks the connection status between each adjacent idle time period from the end of the completion channel backwards, and determines the first processing position that cannot maintain continuous connection as the channel breakpoint, and generates the breakpoint result. In this implementation, after the completion channel has been formed, it is determined whether the capacitor order has exceeded the delivery time. If it has, the continuity relationship between adjacent idle time periods is checked segment by segment from the end of the completion channel backwards to determine the first position where the order cannot be continued, which is used as the channel breakpoint. Each idle time period in the completion channel is taken as the matching idle time period that actually participated in the sequential connection when the channel was generated. Each idle time period corresponds to a processing position and includes a start time, an end time, and a processing position identifier. The final completion time is the end time of the idle time period corresponding to the last processing position in the completion channel. The delivery time and each time in the completion channel use the absolute time value under the same time axis. The implementation process includes the following steps: First, for each capacitor order, the completion channel of the order is read, and the end time of the idle time corresponding to the last processed position in the completion channel is read as the final completion time. Then, the final completion time is compared with the delivery time of the capacitor order. If the final completion time is later than the delivery time, the idle time periods in the completion channel are extracted and arranged in reverse order of processing sequence to form a positioning sequence. If the final completion time is earlier than or equal to the delivery time, the breakpoint positioning process is not performed on the capacitor order. The reverse order of processing sequence means that the idle time period corresponding to the last processed position is placed at the beginning of the positioning sequence, and the idle time period corresponding to the first processed position is placed at the end of the positioning sequence. The connection status between adjacent idle time periods is then checked in reverse order. Subsequently, for two adjacent idle time periods in the positioning sequence, the end time of the previous idle time period is compared with the start time of the next idle time period. If the start time of the next idle time period is earlier than or equal to the end time of the previous idle time period, the connection state between the two adjacent idle time periods is determined to be continuous. If the start time of the next idle time period is later than the end time of the previous idle time period, the connection state between the two adjacent idle time periods is determined to be interrupted. Here, the previous idle time period and the next idle time period refer to two adjacent segments in the positioning sequence, with the previous idle time period located at the beginning of the reversed sequence and the next idle time period located at the end of the reversed sequence. A continuous connection state means that the next idle time period can be connected to the previous idle time period without forming an additional gap. An interrupted connection state means that there is an unconnected time interval between the end of the previous idle time period and the beginning of the next idle time period. After the above connection state is formed, the connection state between each pair of adjacent idle time periods is read in reverse order along the positioning sequence. When the currently read connection state is continuous, the previous two adjacent idle time periods are read. When the currently read connection state is interrupted, the processing position corresponding to the next idle time period after the first connection state of interruption in the reverse reading process is determined as the channel breakpoint, and the result of subtracting the end time of the previous idle time period from the start time of the next idle time period is determined as the breakpoint time difference. The processing position corresponding to the next idle time period after the first connection state of interruption is taken as the channel breakpoint because the previous processing position has formed a completion result, but the next processing position fails to continue according to the end time of the previous processing position. This discontinuous position is the breakpoint that is first exposed when the channel is checked backward from the end. The breakpoint time difference directly represents the unconnected duration at the breakpoint. After determining the channel breakpoint and breakpoint time difference, the channel breakpoint, breakpoint time difference, end completion time, and delivery time are correlated to generate a breakpoint result. The breakpoint result includes at least the capacitor order identifier, the processing position corresponding to the channel breakpoint, the breakpoint time difference, the end completion time, and the delivery time. During subsequent production scheduling and repair, the occupancy sequence corresponding to the channel breakpoint is read based on the breakpoint result, and relocation and reconstruction processing are performed around the breakpoint position. For capacitor orders whose completion channel contains only one idle period, if the end completion time is later than the delivery time, the processing position corresponding to the only idle period is directly determined as the channel breakpoint, and the result of subtracting the delivery time from the end completion time is determined as the breakpoint time difference, and then the breakpoint result is generated. Through the above processing, when the completion channel has been formed and the completion time of the end is later than the delivery time, the connection between the preceding and following segments can be checked forward from the end of the completion channel, and the first discontinuity position can be stably located as the channel breakpoint, while the corresponding breakpoint time difference is given; thus, subsequent repairs no longer target the entire completion channel for overall adjustment, but directly focus on the processing position corresponding to the breakpoint. In practical applications: For example, the completion channels for a capacitor order sequentially include the idle time slots corresponding to the first processing position (April 15th, 10:00-10:40), the second processing position (April 15th, 11:00-12:00), the third processing position (April 16th, 08:00-April 17th, 08:00), and the last processing position (April 17th, 10:00-10:30). The delivery time is 10:00 on April 17th. First, the final completion time, 10:30 on April 17th, is read and determined to be later than the delivery time. Then, a positioning sequence is formed in reverse order of processing sequence, i.e., the idle time slots corresponding to the last processing position, the third processing position, and so on. The idle time periods corresponding to the first and second processing positions are defined. Then, adjacent idle time periods are compared one by one. First, the end time of the idle time period corresponding to the third processing position (April 17th, 08:00) is compared with the start time of the idle time period corresponding to the last processing position (April 17th, 10:00). Since the latter is later than the former, the connection status is determined to be an interruption. Since this interruption is the first interruption in the reverse reading process, the last processing position is determined as the channel breakpoint, and the result of subtracting April 17th, 08:00 from April 17th, 10:00, is determined as the breakpoint time difference (2 hours). Finally, the channel breakpoint, breakpoint time difference, end completion time, and delivery time are associated to generate the breakpoint result, which can be directly called for subsequent production scheduling and repair.
[0021] The production scheduling repair module determines the target orders whose final completion time is still no later than their delivery time after being moved back in the occupied sequence corresponding to the channel breakpoint based on the breakpoint results. It then adjusts the occupied time period corresponding to the target orders to the first continuously connectable idle time period after the channel breakpoint and regenerates the completion channel for capacitor orders with channel breakpoints to obtain the order scheduling results. In this implementation, after the breakpoint result has been formed, the occupied time period that can be moved backward without affecting its own delivery is found from the occupied sequence corresponding to the channel breakpoint. This occupied time period is then moved to the idle sequence after the channel breakpoint to release the resource position and time interval corresponding to the channel breakpoint. Then, the completion channel is regenerated for the capacitor orders with channel breakpoints, and it is determined whether the channel breakpoint has been eliminated. Here, the occupied sequence corresponding to the channel breakpoint is the sequence of occupied time periods that have been written to each resource position under the processing position corresponding to the channel breakpoint. The idle sequence after the channel breakpoint is the sequence of idle time periods whose start time is not earlier than the completion time of the processing position before the channel breakpoint. Each occupied time period corresponds to an order and includes a start time, an end time, and a resource position identifier. The end time after the occupied time period is placed is calculated by adding the length of the occupied time period to the start time of the placed idle time period, where the length of the occupied time period is the end time of the occupied time period minus the start time. The implementation process includes the following steps: First, based on the breakpoint results, read the occupied sequence corresponding to the channel breakpoint and the idle sequence following the channel breakpoint, and read each occupied time period in the occupied sequence one by one. Then, insert the occupied time period into each idle time period arranged in chronological order after the channel breakpoint for trial calculation. During the trial calculation, first read the length of the occupied time period, then read the start and end times of the current idle time period, and calculate the length of the current idle time period. If the length of the current idle time period is not less than the length of the occupied time period, use the start time of the current idle time period as the start time after inserting the occupied time period, and use the result of the calculation of the inserted start time plus the length of the occupied time period as the inserted end time. If the length of the current idle time period is less than the length of the occupied time period, the calculation is performed as follows: When calculating the length of a time period, the idle time period is not used for insertion trial calculation; instead, the next idle time period is read. After completing the insertion trial calculation for each occupied time period, the end time after insertion is compared with the delivery time of the corresponding order. If the end time after insertion is earlier than or equal to the delivery time of the corresponding order, the corresponding order is identified as the target order, and the occupied time period, the start time after insertion, the end time after insertion, and the corresponding idle time period are recorded. If the end time after insertion is later than the delivery time of the corresponding order, the order is not identified as the target order. Through this process, orders that can maintain their on-time completion conditions after being reassigned can be filtered out from the occupied sequence corresponding to the channel breakpoint. After the target orders are determined, the difference between the delivery time of each target order and the end time of its occupied time slot after placement is calculated, and this difference is taken as the remaining delivery time of the target order after placement. Then, the orders are sorted in descending order of this difference; if the differences are the same, they are sorted in ascending order of the start time of the corresponding occupied time slot, and the target order with the highest ranking is selected as the reassigned order. The target order with the highest difference indicates that it will retain a longer remaining delivery time after reassignment. If the differences are the same, the target order with the earliest start time of its original occupied time slot is selected, indicating that the occupied time slot corresponding to the resource position of the earlier occupied channel breakpoint is adjusted first. After the reassigned order is determined, the occupied time slot corresponding to the target order is adjusted to the first continuously connectable idle time slot after the channel breakpoint. The time period is the first idle time period in the idle sequence after the channel breakpoint whose start time is no earlier than the completion time of the previous processing position before the channel breakpoint and whose time period length is no less than the length of the occupied time period. During adjustment, the start time of the first continuously connectable idle time period is used as the start time of the adjusted occupied time period, and the result of the calculation of the adjusted start time and the length of the occupied time period is used as the adjusted end time. The adjusted start time and end time of the occupied time period are written into the occupied sequence corresponding to the channel breakpoint. At the same time, the part actually occupied by the occupied time period is cut out from the first continuously connectable idle time period, and the corresponding idle time period is regenerated for the remaining unoccupied part. After this processing, the original occupancy relationship in the processing position corresponding to the channel breakpoint is updated, and the adjusted occupied sequence and idle sequence can be read when the channel is regenerated in the future. After adjusting the occupied time slots, the completion channel generation is re-executed for capacitor orders with channel breakpoints. During regeneration, the updated resource time slot table is reread from the first to the last processing position according to the original processing order of the capacitor order, and the matching results and completion channels are re-determined according to the aforementioned completion channel generation process. After the regenerated completion channel is formed, its final completion time is read and compared with the delivery time of the capacitor order. If the final completion time is earlier than or equal to the delivery time, the corrected order scheduling result is output. If the final completion time is later than the delivery time, the breakpoint result is retained and the current order scheduling result is output. The corrected order scheduling result includes at least the re-execution of the channel generation process. The generated completion channel, updated occupancy sequence, and delivery determination result corresponding to the capacitor order are recorded. When retaining the breakpoint result, the channel breakpoint, breakpoint time difference, and current completion channel are written into the current order scheduling result for subsequent repair or manual adjustment. For reassignment orders, after adjusting their occupancy time, the subsequent completion channels after the processing position corresponding to the channel breakpoint are regenerated synchronously with the adjusted start and end times as the starting points, and the end completion time is checked again to see if it is still earlier than or equal to the delivery time. When the end completion time of the regenerated reassignment order is later than its delivery time, the current occupancy time adjustment is canceled, and the next target order in the sorting is read to continue the above processing. Through the above processing, we can first filter out target orders that still meet the delivery boundary after being reassigned from the occupancy sequence corresponding to the channel breakpoint. Then, we determine the reassignment orders according to the remaining delivery time and the original occupancy order, and move the occupancy period corresponding to the reassignment order to the first continuously connectable idle period after the channel breakpoint. After that, we regenerate the completion channel for capacitor orders with channel breakpoints to determine whether the repair is successful. At the same time, after the reassignment order is adjusted, its subsequent completion channel is recalculated synchronously, which can avoid the situation where only partial reassignment destroys the delivery boundary of the reassignment order itself. In practical applications: For example, a capacitor order experiences a channel breakpoint at the aging processing station. The breakpoint result shows a breakpoint time difference of 2 hours. First, the occupied sequence corresponding to the aging processing station and the idle sequence after the channel breakpoint are read. If the occupied sequence contains the occupied time period of order A (14:00-18:00) and order B (18:00-22:00), and the idle sequence after the channel breakpoint contains two idle time periods (22:30-03:00 the next day and 05:00-09:00 the next day), then the occupied time period corresponding to order A is first calculated and inserted. Its occupied time period length is 4 hours. After inserting 22:30-03:00 the next day, the end time after insertion is 02:30 the next day. If the delivery time of order A is 10:00 the next day, then order A is identified as the target order. The same calculation is then performed on order B. The end time after insertion is 02:30 the next day, and the delivery time of order B is 08:00 the next day. Therefore, order B can also be identified as the target order. Then, calculate the difference between the delivery time of the two orders and the end time after insertion. If the difference for order A is 7 hours and 30 minutes and the difference for order B is 5 hours and 30 minutes, then order A is prioritized as the give-up order, and the occupied time period for order A is adjusted to 22:30 to 02:30 the next day. Then, the occupied part is cut off from 22:30 to 03:00 the next day, and the idle time period is retained from 02:30 to 03:00 the next day. After completing this adjustment, the completion channel is regenerated for capacitor orders with channel breakpoints. If the end completion time of the regenerated order is earlier than or equal to its delivery time, the repaired order scheduling result is output. If it is still later than its delivery time, the breakpoint result is retained and the current order scheduling result is output.
[0022] Working Principle: This solution revolves around the on-time delivery of capacitor orders. First, big data processing unifies the order entry time, material availability time, and delivery time to determine the starting point for each capacitor order to enter production scheduling, forming a corresponding scheduling interval. Then, the occupied and unoccupied time slots at each processing station's resource location are compiled into a directly readable resource time slot table. Based on this, the system searches for consecutive idle time slots according to the processing order of the capacitor orders, generating a completion channel for each order. If the final completion time is later than the delivery time, the system checks backwards from the end of the completion channel for any breaks, identifying the channel breakpoint. Then, around this breakpoint, it identifies orders from the corresponding occupied sequence that can be moved without affecting their own delivery, freeing up critical time slots to regenerate the completion channel, ultimately obtaining the order scheduling result. In other words, this solution doesn't simply sort by delivery date; it first determines whether an order can form a complete on-time completion path under the current resource status, and then specifically addresses the points that are truly hindering delivery. For example, in a scenario where multiple capacitor orders are produced in parallel, a company receives multiple orders daily. The material arrival times for different orders vary, and resources for winding, impregnation, aging, and final inspection need to be shared. Traditional methods often result in situations where the initial stages have already started, but the later stages are filled with other orders, leading to delays and untimely completion just before delivery. This solution, in practical application, first uses big data processing to unify and integrate all order, material, equipment occupancy, and idle records. Then, it progressively assesses a capacitor order: can it be scheduled to the subsequent processing positions under existing resource conditions? If so, a completion channel is directly established; if not, it continues to pinpoint whether it's stuck at the aging, final inspection, or other processing position. Then, it filters out an order that can be moved from the already occupied positions, shifts it to a later idle period, and regenerates a completion channel for the original order. In this way, instead of passively addressing issues when orders are nearing their due date, the scheduling process proactively identifies which segments will be interrupted and which orders can be moved, ensuring the scheduling results closely align with the actual delivery process.
[0023] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A capacitor order intelligent scheduling system based on delivery cycle, characterized in that, include: The order modeling module is used to pair the start time and delivery time of each capacitor order, determine the production scheduling range of the corresponding capacitor order, and generate the order base table. The production line mapping module is used to arrange the occupied time slots of each resource location in chronological order within the production scheduling cycle, and determine the idle sequence of each resource location based on the time interval between adjacent occupied time slots, and generate a resource time slot table. The channel generation module, for each capacitor order, according to the production scheduling interval in the order base table and the idle sequence in the resource time period table, sequentially matches the idle time period that is continuously connected to the completion time of the previous processing position according to the processing order of the capacitor order, and connects the matched idle time periods in sequence to generate the completion channel of the corresponding capacitor order. The breakpoint location module is used to compare the end completion time of the completion channel with the delivery time of the corresponding capacitor order. When the end completion time is later than the delivery time, it checks the connection status between each adjacent idle time period from the end of the completion channel backwards, and determines the first processing position that cannot maintain continuous connection as the channel breakpoint, and generates the breakpoint result. The production scheduling repair module determines the target orders whose final completion time is still no later than their delivery time after being moved from the occupancy sequence corresponding to the channel breakpoint, based on the breakpoint results. It then adjusts the occupancy time period corresponding to the target orders to the first continuously connectable idle time period after the channel breakpoint and regenerates the completion channel for capacitor orders with channel breakpoints, thus obtaining the order scheduling results.
2. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 1, characterized in that, The execution of the order modeling module includes: Compare the entry time and the completion time for each capacitor order. If the entry time is later than the completion time, the entry time is determined as the starting time. If the completion time is later than the entry time, the completion time is determined as the starting time. If the entry time and the completion time are the same, the same time is determined as the starting time. The production scheduling range for the capacitor order is determined based on the start date and delivery date, and the scheduling duration for the capacitor order is determined based on the calculation result of subtracting the start date from the delivery date. The order base table is generated by associating the start date, delivery date, production interval, and available time for each capacitor order with corresponding information and sorting them in ascending order of delivery date. If the delivery dates are the same, they are sorted in ascending order of start date.
3. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 2, characterized in that, The execution of the production line mapping module includes: Arrange the occupied time periods corresponding to each resource location within the production scheduling cycle in ascending order of start time, and in the case of the same start time, arrange them in ascending order of end time to obtain the occupied sequence corresponding to each resource location. For two adjacent occupied time periods in the same occupied sequence, compare them before and after. If the start time of the later occupied time period is later than the end time of the earlier occupied time period, the time period from the end time of the earlier occupied time period to the start time of the later occupied time period is determined as the interval period.
4. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 3, characterized in that, The execution of the production line mapping module also includes: The start time of the production scheduling cycle is compared with the start time of the first occupied time period in the occupied sequence. If the start time of the first occupied time period is later than the start time of the production scheduling cycle, the time from the start time of the production scheduling cycle to the start time of the first occupied time period is determined as the interval period. The end time of the last occupied time period in the occupied sequence is compared with the end time of the production scheduling cycle. If the end time of the production scheduling cycle is later than the end time of the last occupied time period, the time from the end time of the last occupied time period to the end time of the production scheduling cycle is determined as the interval period. Arrange the time intervals corresponding to each resource location in chronological order to obtain the idle sequence corresponding to each resource location, and associate the occupied sequence and idle sequence corresponding to each resource location to generate a resource time interval table.
5. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 4, characterized in that, The execution of the channel generation module includes: For each capacitor order, read the production scheduling interval in the order base table and the idle sequence in the resource time period table. Take the start of the production scheduling interval as the entry time of the first processing position and the completion time of the previous processing position as the entry time of the next processing position. Extract all idle time periods in the idle sequence corresponding to the current processing position whose start time is not earlier than the entry time and whose end time is not later than the end of the production scheduling interval to form the candidate segment set of the current processing position. For each candidate idle time period in the candidate segment set, read the corresponding idle sequence bit by bit along the remaining processing order of the capacitor order. When there is an idle time period whose start time is not earlier than the completion time of the previous processing position, take the first idle time period after the start time is sorted in ascending order as the matching idle time period of the current remaining processing position, and calculate the waiting time between the completion time of the previous processing position and the start time of the matching idle time period of the current remaining processing position. When there is no idle time period that meets the conditions in the current remaining processing position, write the candidate idle time period into the blocking record and stop reading. When all remaining processing positions form matching idle time periods, write the candidate idle time period and the corresponding matching idle time periods into the connection record.
6. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 5, characterized in that, The execution of the channel generation module also includes: For each candidate idle time period in the connection record, the upper limit value, total waiting time, remaining time between the completion time of the last processing position and the end of the production interval, and the total value of the difference between adjacent waiting times are calculated. The idle time periods are then sorted in ascending order of upper limit value, ascending order of total waiting time, descending order of remaining time, ascending order of total value of difference between adjacent waiting times, and ascending order of the start time of the candidate idle time period. The matching idle time periods corresponding to the first candidate idle time period are taken as the matching results of the current capacitor order, and the matching results are written to the locked record.
7. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 6, characterized in that, The execution of the channel generation module also includes: If there is no through record at the current processing position, write the current processing position to the rollback record and release the matching result of the locked record already written in the previous processing position. After deleting the candidate idle time period corresponding to the matching result in the candidate segment set of the previous processing position, re-execute the candidate segment set formation, blocking record writing, through record writing and locking record writing. If there is no candidate idle time period after deleting the candidate idle time period corresponding to the matching result in the previous processing position, continue to write the rollback record to the previous processing position until the current processing position forms a matching result or the first processing position is written to the rollback record. After matching results are formed for the idle sequences corresponding to each processing position, the idle time periods obtained by matching are connected in order of processing sequence to generate the completion channel of the corresponding capacitor order. The idle time periods in the completion channel are written into the occupied sequence in the resource time period table. When the first processing position is written into the rollback record, the capacitor order is written into the uncompleted record.
8. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 7, characterized in that, The execution of the breakpoint location module includes: The end completion time of the completion channel for each capacitor order is compared with the delivery time of the capacitor order. If the end completion time is later than the delivery time, the idle time periods in the completion channel are extracted and arranged in reverse order of processing sequence to form a positioning sequence. For two adjacent idle time periods in the positioning sequence, the end time of the previous idle time period is compared with the start time of the next idle time period. If the start time of the next idle time period is earlier than or equal to the end time of the previous idle time period, the connection state between the two adjacent idle time periods is determined to be continuous. If the start time of the next idle time period is later than the end time of the previous idle time period, the connection state between the two adjacent idle time periods is determined to be interrupted.
9. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 8, characterized in that, The execution of the breakpoint location module also includes: Read the connection status between each pair of adjacent idle time periods in reverse order along the positioning sequence. When the connection status is continuous, continue reading the previous two adjacent idle time periods. When the connection status is interrupted, determine the processing bit corresponding to the next idle time period after the first interrupted connection status during the reverse reading process as the channel breakpoint, and determine the breakpoint time difference by subtracting the end time of the previous idle time period from the start time of the next idle time period. The breakpoint is generated by associating the channel breakpoint, breakpoint time difference, end completion time, and delivery time.
10. The intelligent scheduling system for capacitor orders based on delivery cycle according to claim 9, characterized in that, The execution of the production scheduling repair module includes: Based on the breakpoint results, read the occupied sequence corresponding to the channel breakpoint and the idle sequence after the channel breakpoint. Place each occupied time period in the occupied sequence into the idle time periods arranged in chronological order after the channel breakpoint. Calculate the end time after the occupied time period is placed. If the end time is earlier than or equal to the delivery time of the corresponding order, the corresponding order is determined as the target order. After determining the target orders, calculate the difference between the delivery time of each target order and the end time after its occupied time period is inserted, and sort them in descending order according to the difference. If the difference is the same, sort them in ascending order according to the start time of the occupied time period corresponding to the target order. Take the target order with the first position in the sorted order, adjust the occupied time period corresponding to the target order to the first continuously connected idle time period after the channel breakpoint, and write the adjusted start time and end time of the occupied time period into the occupied sequence corresponding to the channel breakpoint. After completing the time period adjustment, the completion channel generation is re-executed for capacitor orders with channel breakpoints. The end completion time of the regenerated completion channel is compared with the delivery time. If the end completion time is earlier than or equal to the delivery time, the repaired order scheduling result is output. If the end completion time is later than the delivery time, the breakpoint result is retained and the current order scheduling result is output.