Maximum permission robust deadlock control strategy generation method of automatic manufacturing system

By generating deadlock control places and robust control places in the resource-oriented Petri net of the automatic manufacturing system, the downtime problem caused by resource failure is solved, the maximum permissibility and fault tolerance of the system in the event of failure is achieved, and the controller structure and computational complexity are simplified.

CN120630685APending Publication Date: 2025-09-12LANZHOU UNIVERSITY OF TECHNOLOGY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510763365.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-09
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

In the prior art, when a resource fails in an automatic manufacturing system, the automatic manufacturing system has to stop and wait for the failed resource to be repaired, resulting in unnecessary downtime.

Method used

By obtaining the set of loop subnets in the resource-oriented Petri net of the automatic manufacturing system, finding the first bad state, generating a deadlock control library, and obtaining the blocking set of unreliable neighboring resources, generating a robust control library, and finally outputting a controlled resource-oriented Petri net, it is ensured that the system can continue to operate without using the path of the faulty resource when a resource fails.

Benefits of technology

The maximum permissibility of the automatic manufacturing system is achieved when a resource fails, ensuring that the system does not enter a deadlock state. The controller has a simple structure and low computational complexity, is applicable to various types of automatic manufacturing systems, and is fault-tolerant.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120630685A_ABST
    Figure CN120630685A_ABST
Patent Text Reader

Abstract

The invention provides a method for generating a maximum permission robust deadlock control strategy of an automatic manufacturing system, and relates to the technical field of automation, and the method comprises the steps: obtaining a loop subnet set in a resource-oriented Petri net of the automatic manufacturing system; according to the loop subnet set, searching a first bad state in the resource-oriented Petri net; generating a deadlock control place according to the first bad state; in the resource-oriented Petri, a blocking set of unreliable neighborhood resources is obtained; generating a robust control place according to the blocking state of the blocking set; and outputting the controlled resource-oriented Petri network according to the deadlock control library and the robust control library. According to the technical scheme, the resource-oriented Petri network model is analyzed, the deadlock control library and the robust control library are designed, and the robust deadlock controller is synthesized, so that the automatic manufacturing system can continue to operate without using a path of a fault resource when the resource fault occurs, the reachable graph of the whole system network is prevented from being listed, maximum permission control is realized, and the reliability of the system network is improved. And the structure complexity and the calculation complexity are low.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of automation technology, and in particular relates to a method for generating a maximum permissible robust deadlock control strategy for an automatic manufacturing system. Background Art

[0002] An automatic manufacturing system is a highly automated system that uses computer technology, information technology, and automation technology to supervise, manage, and control the production process, thereby improving production efficiency, reducing production costs, and improving product quality.

[0003] In related technologies, automatic manufacturing systems can be modeled based on resource-oriented Petri nets. By analyzing the relationship between bad states and structural characteristics in resource-oriented Petri nets, all bad state sets in the loop are found through reachability analysis, and then the minimum covering set is found through simple calculations. A control strategy is designed for each bad state to ensure that the automatic manufacturing system does not enter a deadlock state during operation.

[0004] However, when a resource in the automatic manufacturing system fails, the above control strategy will no longer work, a blocking state will occur, and the automatic manufacturing system has to stop and wait for the faulty resource to be repaired, resulting in unnecessary downtime. Summary of the Invention

[0005] The present application provides a method for generating a maximum permissible robust deadlock control strategy for an automatic manufacturing system, which solves the problem in related technologies that when a resource failure occurs in the automatic manufacturing system, the automatic manufacturing system has to stop and wait for the faulty resource to be repaired, resulting in unnecessary downtime.

[0006] To achieve the above objectives, this application adopts the following technical solutions:

[0007] In a first aspect, an embodiment of the present application provides a method for generating a maximum permissible robust deadlock control strategy, the method comprising:

[0008] In the resource-oriented Petri net of the automatic manufacturing system, a plurality of loop subnets are obtained to obtain a loop subnet set;

[0009] According to the loop subnet set, searching for the first bad state in the resource-oriented Petri net;

[0010] generating a deadlock control library according to the plurality of first encountered bad states;

[0011] In the resource-oriented Petri net, a blocking set of unreliable neighboring resources is obtained;

[0012] generating a robust control place according to the blocking state of the blocking set;

[0013] According to the deadlock control place and the robust control place, a controlled resource-oriented Petri net is output.

[0014] Optionally, searching for a first bad state in the resource-oriented Petri net according to the loop subnet set includes:

[0015] For each loop subnet in the loop subnet set, searching for the loop subnet corresponding to the deadlock state;

[0016] According to the plurality of loop subnets corresponding to the deadlock states, the first encountered bad state is searched through the plurality of deadlock states.

[0017] Optionally, searching for the loop subnet corresponding to the deadlock state includes:

[0018] Determining the resource capacity corresponding to the loop subnet;

[0019] If the resource capacity corresponding to the loop subnet reaches the upper capacity limit, it is determined that the loop subnet corresponds to the deadlock state;

[0020] Alternatively, if the loop subnet has no external output, it is determined that the loop subnet corresponds to the deadlock state.

[0021] Optionally, searching for the first encountered bad state through the multiple deadlock states according to the multiple loop subnets corresponding to the deadlock states includes:

[0022] For each of the deadlock states, if any legal state in the resource-oriented Petri net changes to the deadlock state by emitting any transition, the deadlock state corresponding to the loop subnet is determined to be the first-encountered bad state.

[0023] Optionally, generating a deadlock control place according to the plurality of first encountered bad states includes:

[0024] For each of the first encountered bad states, determining a minimum covering set of the first encountered bad states;

[0025] For each of the first-encountered bad states in the minimum covering set, the deadlock control place is generated.

[0026] Optionally, obtaining a blocking set of unreliable neighboring resources in the resource-oriented Petri net includes:

[0027] Searching for unreliable resources in the resource-oriented Petri net according to pre-set parameters;

[0028] In the resource-oriented Petri net, determining fault-dependent resources, unreliable neighboring resources, and reliable resource production paths based on the unreliable resources;

[0029] The blocking set of the unreliable neighboring resources is determined according to the fault-dependent resources, the unreliable neighboring resources, and the reliable resource production path.

[0030] Optionally, generating a robust control place according to the blocking state of the blocking set includes:

[0031] For each place in the blocking set, determining whether the blocking state corresponding to the place satisfies a preset blocking full condition;

[0032] If the blocking state corresponding to the place satisfies the blocking fullness condition, the robust control place is generated for the blocking state.

[0033] Optionally, generating the robust control place for the blocking state includes:

[0034] For each of the blocking states, determining whether the blocking state is derived from other blocking states;

[0035] If the blocking state comes from other blocking states, the blocking state is ignored;

[0036] If the blocking state does not come from other blocking states, the robust control place is generated according to the blocking state.

[0037] Optionally, outputting a controlled resource-oriented Petri net according to the deadlock control place and the robust control place includes:

[0038] The deadlock control place and the robust control place are combined and added into the resource-oriented Petri net to obtain the controlled resource-oriented Petri net.

[0039] In a second aspect, an embodiment of the present application provides an automatic manufacturing system, comprising: a memory and a processor, the memory being used to store a computer program; the processor being used to execute the method described in the first aspect or any embodiment of the first aspect when calling the computer program.

[0040] An embodiment of the present application provides a method for generating a maximum permissible robust deadlock control strategy for an automatic manufacturing system, which obtains a loop subnet set by obtaining each loop subnet in a resource-oriented Petri net, and searches for a first-encountered bad state in the resource-oriented Petri net based on the loop subnet set, and then generates a deadlock control place based on multiple first-encountered bad states; and, in the resource-oriented Petri net, obtains a blocking set of unreliable neighborhood resources, and generates a robust control place based on the blocking state of the blocking set, and then outputs a controlled resource-oriented Petri net based on the deadlock control place and the robust control place. By searching for the first bad state of the loop subnet in the resource-oriented Petri net and generating the corresponding deadlock control place, and at the same time generating the robust control place according to the blocking state corresponding to the blocking set in the resource-oriented Petri net, the resource-oriented Petri net is finally optimized and adjusted according to the deadlock control place and the robust control place to obtain a controlled resource-oriented Petri net. By analyzing the structural characteristics and state information of the Petri net model, the deadlock control place and the robust control place are designed to ensure that the automatic manufacturing system can continue to operate without using the path of the faulty resource when a resource fails, it can avoid listing the reachable graph of the entire system network, and can achieve maximum permissible control. In addition, the controller structure complexity and computational complexity are low.

[0041] The advantages of this application are specifically reflected in the following aspects:

[0042] 1) Maximum permissibility: This control strategy ensures the maximum permissibility of the system, that is, it does not prohibit any legal system state;

[0043] 2) Simple structure: Only two control locations need to be added, and there is no redundant control location, so the controller structure is simple;

[0044] 3) Computational efficiency: Compared with other methods, this method can synthesize the controller through simple calculations, which significantly reduces the computational complexity.

[0045] 4) Universality: This control strategy is independent of the initial state of the system and is applicable to deadlock prevention problems in various types of automatic manufacturing systems;

[0046] 5) Fault tolerance: This control strategy takes resource failures into account and ensures that the system can continue to operate after a resource failure occurs without using the production path that does not use the failed resource. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] Figure 1 A schematic diagram of the structure of a resource-oriented Petri net involved in a strategy generation method proposed in an embodiment of the present application;

[0048] Figure 2 A schematic diagram of an automatic manufacturing system model proposed in an embodiment of the present application;

[0049] Figure 3 A schematic flow chart of a method for generating a maximum permissible robust deadlock control strategy for an automated manufacturing system provided in an embodiment of the present application;

[0050] Figure 4 A schematic diagram of a control location and transition provided in an embodiment of the present application;

[0051] Figure 5 A schematic diagram of the structure of a controlled resource-oriented Petri net involved in a strategy generation method proposed in an embodiment of the present application;

[0052] Figure 6 A schematic structural diagram of an automatic manufacturing system provided in an embodiment of the present application. DETAILED DESCRIPTION

[0053] In the following description, specific details such as specific system structures and techniques are provided for purposes of illustration rather than limitation to facilitate a thorough understanding of the embodiments of the present application. However, it will be apparent to those skilled in the art that the present application may be implemented in other embodiments without these specific details. In other cases, detailed descriptions of the well-known Petri net concepts, Petri net-related algorithms, and automated manufacturing systems are omitted to prevent unnecessary details from obscuring the description of the present application.

[0054] The terms used in the following embodiments are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification and appended claims of this application, the singular expressions "a," "said," "above," and "the" are intended to also include expressions such as "one or more," unless the context clearly indicates otherwise.

[0055] Automated manufacturing systems, as a crucial component of intelligent manufacturing, leverage computer, information, and automation technologies to monitor, manage, and control production processes, thereby improving efficiency, reducing costs, and enhancing product quality. Automated manufacturing systems are highly automated systems typically comprised of a series of concurrently running processes that share and compete for limited resources. Deadlock occurs when a cyclic wait condition occurs in an automated manufacturing system, preventing further operation. Consequently, the deadlock problem has garnered significant attention from researchers in the manufacturing industry.

[0056] However, resource failures are inevitable in real-world asset management systems. A simple resource failure, such as workpiece wear, signal loss, or sensor failure, can cause the entire system to shut down. Robust deadlock mitigation methods for automated manufacturing systems with resource failures primarily employ two techniques: structural analysis and reachability analysis.

[0057] The structural analysis method designs control strategies by identifying special structural elements (such as beacons) in the Petri net model of the automated manufacturing system. Its advantages lie in its high computational efficiency and simple control logic, but the generated controlled models are often conservative, which may lead to restricted system behavior.

[0058] In contrast, reachability analysis, by traversing the system's state space, can construct a maximally permissive controller, ensuring that legal system states are preserved as much as possible while avoiding deadlock. The core of the maximally permissive controller design is to ensure that no legal states are mistakenly excluded, and bad states are constrained only by adding monitoring mechanisms. However, this approach faces the challenge of high computational complexity, especially for large systems, where the explosive growth of the state space significantly reduces the efficiency of the analysis.

[0059] In related technologies, based on resource-oriented Petri nets, through the relationship between bad marks and structural characteristics in resource-oriented Petri nets, all bad state sets in the loop can be found through reachability analysis, and then the minimum covering set can be found through simple calculations, and a control strategy can be designed for each bad mark to ensure that the automatic manufacturing system will not enter a deadlock state during operation.

[0060] However, when a resource in the automatic manufacturing system fails, the above control strategy will no longer work, a blocking state will occur, and the automatic manufacturing system has to stop and wait for the faulty resource to be repaired, resulting in unnecessary downtime.

[0061] Therefore, an embodiment of the present application proposes a method for generating a maximum permissible robust deadlock control strategy for an automatic manufacturing system, by obtaining each loop subnet in the resource-oriented Petri net of the automatic manufacturing system to obtain a loop subnet set, and based on the loop subnet set, searching for the first bad state in the resource-oriented Petri net, and then generating a deadlock control place based on multiple first bad states; and, in the resource-oriented Petri, obtaining a blocking set of unreliable neighborhood resources, and generating a robust control place based on the blocking state of the blocking set, and then outputting a controlled resource-oriented Petri net based on the deadlock control place and the robust control place. By searching for the first bad state of the loop subnet in the resource-oriented Petri net and generating the corresponding deadlock control place, and at the same time generating the robust control place according to the blocking state corresponding to the blocking set in the resource-oriented Petri net, the resource-oriented Petri net is finally optimized and adjusted according to the deadlock control place and the robust control place to obtain a controlled resource-oriented Petri net. By analyzing the structural characteristics and state information of the Petri net model, the deadlock control place and the robust control place are designed to ensure that the automatic manufacturing system can continue to operate without using the path of the faulty resource when a resource fails, it can avoid listing the reachable graph of the entire system network, and can achieve maximum permissible control. In addition, the controller structure complexity and computational complexity are low.

[0062] The advantages of this application are specifically reflected in the following aspects:

[0063] 1) Maximum permissibility: This control strategy ensures the maximum permissibility of the system, that is, it does not prohibit any legal system state;

[0064] 2) Simple structure: Only two control locations need to be added, and there is no redundant control location, so the controller structure is simple;

[0065] 3) Computational efficiency: Compared with other methods, this method can synthesize the controller through simple calculations, which significantly reduces the computational complexity.

[0066] 4) Universality: This control strategy is independent of the initial state of the system and is applicable to deadlock prevention problems in various types of automatic manufacturing systems;

[0067] 5) Fault tolerance: This control strategy takes resource failures into account and ensures that the system can continue to operate after a resource failure occurs without using the production path that does not use the failed resource.

[0068] See also Figure 1 , Figure 1This is a structural diagram of a resource-oriented Petri net involved in a strategy generation method proposed in an embodiment of the present application. Therefore, the present application models the automatic manufacturing system based on the resource-oriented Petri net and designs a corresponding strategy generation method. The resource-oriented Petri net modeling simplifies the model structure through a one-to-one mapping between resources and locations, and omits redundant process locations in the process-oriented Petri net.

[0069] A color scheme was also introduced to assign unique identifiers to workpieces in different machining paths, preventing path confusion and enabling dynamic tracking of part status changes. This modeling approach not only simplifies the model but also significantly improves analysis efficiency.

[0070] For example, Figure 1 As shown, the processing paths of three parts are distinguished by color The direct mapping of resource libraries p1-p6 enables constraints such as buffer capacity and resource contention to be expressed intuitively.

[0071] For this resource-oriented Petri net, the following definitions are set:

[0072] Definition 1: A resource-oriented Petri net model is N = (P, T, I, O, M, K).

[0073] Where P = {p1, p2, ..., p m} is the library p1, p2, to p m The set of; T={t1,t2,…,t m} is the transition from t1, t2 to t m A collection of I: P×T→N={0,1,2,…} is the input function; O: P×T→N={0,1,2,…} is the output function; M: P→N={0,1,2,…} is a state representing the number of tokens in the place, where M0 is the initial state; K: P→N\{0} is the capacity function, where K(p) represents the upper limit of the token capacity of place p.

[0074] Moreover, in resource-oriented Petri nets, a transition t is said to be enabled in state M when the following conditions are met.

[0075] For example, when transition t satisfies condition (1), it is called process-enabled; when it satisfies condition (2), it is called resource-enabled.

[0076]

[0077] Moreover, R(M0) represents the set of all reachable states starting from the initial identifier M0. In a resource-oriented Petri net, a transmittable transition t must satisfy both the process enablement condition and the resource enablement condition. When transition t is triggered in state M, the new state M′ can be obtained according to the following rule (3):

[0078]

[0079] In the resource-oriented Petri net, the pre-set and post-set of a place p∈P are defined as: ·p={t∈T|A token can enter p by triggering transition t}, p·={t′∈T|A token can flow from p to the next place by triggering transition t′}.

[0080] Consider an automatic manufacturing system with three generation paths, such as Figure 2 As shown, the production routes are r1→r2→r3→r4→r5; r5→r4→r3; r1 → r6; resource r3 is unreliable, while the remaining resources are reliable. The capacities of resources r1-r6 are 1, 1, 2, 1, 2, and 1, respectively. Typically, each resource consists of a server and a buffer. If an unreliable resource fails, its server becomes unavailable, but the buffer can still store parts. Therefore, workpieces that require the failed resource for subsequent processing cannot be produced.

[0081] Replace resource r1→r6 with place p1→p6, and use p0 to represent the loading and unloading station, and the production process of the workpiece is expressed as p1→p2→p3→p4→p5; p5→p4→p3; p1→p6, thus we get Figure 2 The resource-oriented Petri net model of the automatic manufacturing system model shown in Figure 1 As shown, the place capacities are set as: K(p1)=K(p2)=K(p4)=K(p6)=1, K(p3)=K(p5)=2.

[0082] Definition 2: Given a resource-oriented Petri net model of an automated manufacturing system, for any transition t i ∈T,C(t i )=c i Indicates that the transition t i The unique color identifier of t i ′ is the corresponding response to change.

[0083] Each transition is assigned a unique color, and the tokens in place p can be defined with color attributes accordingly. Given a resource-oriented Petri net model of an automated manufacturing system, if Then define the library place p i Activation transition t j The token color is c j In state M, p i The middle color is c j The number of tokens is recorded as M(p i ,c j ). It should be noted that when a token flows from one place to the next, its color c j Thus, a new Petri net model can be obtained, which is called the colored resource-oriented Petri net, and its execution rules are as follows.

[0084] In a colored resource-oriented Petri net, if and only if for all p i ∈P satisfies the following conditions (4) and (5), and has color identification c j Changes j In order to be p in state M i Token activation in:

[0085]

[0086] K(p i )≥M(p i ,c j )-I(p i ,c j )(c j )+O(p i ,c j )(c j ) (5)

[0088] Definition 3: Given a resource-oriented Petri net model of an automated manufacturing system, if there is an unreliable resource in the current resource or the remaining path, and the token in the resource must use the unreliable resource in its remaining path, then the resource is fault-dependent. Let P FD A collection of fault-dependent resources.

[0089] by Figure 1 For example, if p3 is an unreliable resource, then p3 is fault-dependent. Because there is an unreliable resource p3 in the remaining path of p2, and the token in p2 must use p3 in its remaining path, so p2 is also faulty. Because the token in p1 may use the reliable resource p6 in its remaining path, p1 is not a fault-dependent resource. That is, P FD ={p2,p3}.

[0090] Definition 4: Given a resource-oriented Petri net model of an automated manufacturing system, if a token in place p enters an unreliable resource p′ in its remaining path, then p is called an unreliable neighbor resource of p′, where p≠p0. Let N p is the set of unreliable neighboring resources of p.

[0091] For example, see Figure 1 , because the tokens in p1, p2, p4, and p5 will enter the unreliable resource p3 in their remaining routes, that is, N p ={p1,p2,p3,p4,p5}.

[0092] Definition 5: Given a resource-oriented Petri net model of an automated manufacturing system, the blocking set of unreliable neighboring resources is defined as in represents the set of places in the production path that does not require unreliable resources, and k represents the number of production paths that do not require unreliable resources.

[0093] For example, see Figure 1 , N p3 ={p1,p2,p3,p4,p5}, Right now

[0094] Therefore, this application proposes a blocking set of unreliable neighborhood resources By analyzing the special properties of the blocking set, we can find the partially blocked state, so that we can prevent all the blocking states according to the corresponding control strategy, thereby avoiding enumerating the reachable graph of the entire system network and making the controller design simpler.

[0095] Definition 6: Given a resource-oriented Petri net model of an automated manufacturing system, if there exists When a resource failure occurs, t∈p˙ cannot be triggered by any token in p, and p has no remaining buffer, then It is called blocked.

[0096] Attach Figure 1 For example, in the state M=M(p1,c2)+M(p2,c3)+M(p3,c4)M(p3,c 12 )+M(p4,c 11 )+2M(p5,c 10 ), If the unreliable resource p3 fails in state M, then for any There is no token in The change can be triggered, so It is full of blockage.

[0097] In a resource-oriented colored Petri net model of an automated manufacturing system, all reachable state sets R(M0) can be divided into a set of robust legal markings and a set of bad markings. The set of robust legal markings is denoted as M L ={M|M∈R(M0)and M∈M0}, the set of bad marks is denoted as The deadlock and blocking states in this application belong to M B .

[0098] Represents the set of first encountered bad states.

[0099] Definition 7: Given a resource-oriented Petri net model of an automated manufacturing system, if and M′ such that M(p)≥ A M'A(p), then M' is covered by M.

[0100] Definition 8: Given a resource-oriented Petri net model of an automated manufacturing system, It's M FBM A subset of M if it satisfies the following conditions FBM The minimum set covered:

[0101] Make M≥ A M';

[0102] Make M”≥ A M'.

[0103] Because the blocking state is filled with blocking So only a subset of the place p is needed The blocking state is found in . represents the set of these blocking states, The blocking state in must be an initial blocking state, from which a new blocking state will be obtained. If all states in are blocked, then the system is robust and deadlock-free under the assumption that the system is live.

[0104] Definition 9: Given a resource-oriented Petri net model of an automated manufacturing system, M and M′ are two blocking markers, and u is a control strategy. Mu-coverage M′ is expressed as M≥ u M'. If M' is forbidden by u(M'), then M is also forbidden by u(M').

[0105] Therefore, we first need to find Then, a control place is designed for each first-encountered bad state to prevent the blocking state from occurring.

[0106] Definition 10: In a resource-oriented Petri net model of a given automated manufacturing system, for a given blocking state The place set of this state is represented as P FBM ={p1,p2,···,p n If there is a production process p i1 <p i2 <···<p ik And {p i1 ,p i2 ,···,p ik}∈P FBM , then define a controller v as:

[0107] 1) The output arc of v points to transition t i0 ∈ · p i1 , the input arc points to the transition where t i0 belong Emission transition t i0 Will move a token to p i1 , p ik The token in will make the Change ik emission;

[0108] 2) M(v) is equal to Where m is a member of the set P FBM -P FD The number of places in .

[0109] The following is based on Figure 1 The resource-oriented Petri net shown in FIG. 1 is used to introduce in detail the process of generating the control strategy of the resource-oriented Petri net.

[0110] Figure 3 This is a schematic flow chart of a method for generating a maximum permissible robust deadlock control strategy for an automated manufacturing system provided in an embodiment of the present application, as an example and not as a limitation, see Figure 3 , the method comprising:

[0111] Step 301: In a resource-oriented Petri net of an automatic manufacturing system, multiple loop subnets are obtained to obtain a loop subnet set.

[0112] In the process of generating the control strategy corresponding to the resource-oriented Petri net, the resource-oriented Petri net of the automatic manufacturing system can be first input into the electronic device. By combining the electronic device with the automatic manufacturing system, the resource-oriented Petri net can be analyzed and calculated based on multiple definitions pre-set for the resource-oriented Petri net. In subsequent steps, the initial resource-oriented Petri net can be optimized to obtain a controlled resource-oriented Petri net.

[0113] Accordingly, the electronic device may first identify the loop subnet in the resource-oriented Petri net, search and obtain multiple loop subnets in the resource-oriented Petri net, and thus obtain a loop subnet set consisting of the multiple loop subnets.

[0114] For example, the set of loop subnets can be represented as Ω = {Ω1,Ω2,...,Ω n}, where Ω1, Ω2 to Ω n , can all be loop subnets in the resource-oriented Petri net, and n is a positive integer.

[0115] It should be noted that the above-mentioned electronic device can be a terminal device, a server, or other devices with data calculation and processing functions. The embodiments of the present application do not specifically limit the electronic device.

[0116] Step 302: Search the first bad state in the resource-oriented Petri net according to the loop subnet set.

[0117] After obtaining the loop subnet set, the electronic device can determine the state corresponding to each loop subnet in the loop subnet set, so that the first bad state in the resource-oriented Petri net can be found according to the state corresponding to each loop subnet, so that in subsequent steps, a deadlock control library can be generated according to each first bad state.

[0118] Optionally, in the process of searching for the first bad state in the resource-oriented Petri net, for each loop subnet in the loop subnet set, the electronic device can first search for the loop subnet corresponding to the deadlock state, and then search for the first bad state through multiple deadlock states based on the multiple loop subnets corresponding to the deadlock state.

[0119] Specifically, the electronic device may first traverse each loop subnet in the loop subnet set to determine whether each loop subnet corresponds to a deadlock state, then identify each deadlock state, and determine the first encountered deadlock state from multiple deadlock states.

[0120] Furthermore, for each loop subnet, the electronic device can first determine the capacity corresponding to the loop subnet, and then determine whether the loop subnet is in a deadlock state based on the capacity corresponding to the loop subnet. If the capacity corresponding to the loop subnet reaches the capacity limit, it can be determined that the loop subnet is in a deadlock state.

[0121] Alternatively, for each loop subnet, the electronic device can determine the transitions activated by the token corresponding to the loop subnet. If the token corresponding to the loop subnet only activates transitions within the loop subnet, it is determined that the loop subnet has no external output, and thus it can be determined that the loop subnet is in a deadlock state.

[0122] For example, the above process of determining the deadlock state can be expressed as:

[0123] satisfy:

[0124] iM(Ω i )=K(Ω i )(The number of loop subnet tokens reaches the upper limit of capacity);

[0125] ii. Token only activates Ω i Internal changes (no external output);

[0126] Then M is in deadlock state, recorded as M∈M B (Ω i ).

[0127] Among them, M is any state, M B (Ω i ) is the deadlock state set, M(Ω i )=K(Ω i ) indicates that the capacity of the loop subnet has reached the upper limit. Indicates that the token only activates Ω i Internal changes, no external output.

[0128] Furthermore, for each deadlock state, the electronic device can search for each first-encountered bad state in the resource-oriented Petri net based on any legal state in the resource-oriented Petri net and in combination with each determined deadlock state.

[0129] Among them, the legal state is a corresponding state in any loop subnet.

[0130] Specifically, for any legal state in a resource-oriented Petri net, in the loop subnet to which the legal state belongs, it is determined whether the state obtained after the legal state is transmitted through any transition is a deadlock state. If the state after the transition is a deadlock state, the deadlock state corresponding to the loop subnet can be determined to be a first-failure state. Therefore, a first-failure state set can be obtained based on multiple first-failure states.

[0131] For example, the above process of determining the first bad state can be expressed as:

[0132] for each M∈M B (Ω i ):

[0133] and t∈T such that M′[t>M;

[0134] Then M∈M FBM (Ω).

[0135] Among them, M is any deadlock state, M B (Ω i ) is the deadlock state set, M FBM (Ω) is the first bad state set, M L Represents the legal state set, M′ represents the legal state, T represents the transition set, t represents any transition, M′[t>M] represents that after any legal state is emitted through any transition, the resulting state is a deadlock state.

[0136] Step 303: Generate a deadlock control place based on multiple first-encountered bad states.

[0137] Corresponding to step 302, after obtaining multiple first-encountered bad states, or obtaining a first-encountered bad state set consisting of multiple first-encountered bad states, the electronic device can further filter the multiple first-encountered bad states, so that the corresponding deadlock control library can be generated according to the filtered first-encountered bad states, and the control strategy corresponding to each deadlock state in the resource-oriented Petri net can be obtained.

[0138] Optionally, for each first-encountered failure state, the electronic device may first perform screening based on multiple first-encountered failure states to obtain multiple screened first-encountered failure states, and the multiple screened first-encountered failure states may form a minimum covering set.

[0139] Correspondingly, the electronic device can design a control strategy for each first-encountered bad state in the minimum covering set and generate a deadlock control library. Thus, each first-encountered bad state in the minimum covering set can be avoided through the deadlock control library, and then various deadlock states in the resource-oriented Petri net can be avoided to ensure that the automatic manufacturing system will not enter a deadlock state during operation.

[0140] Step 304: Obtain the blocking set of unreliable neighboring resources in the resource-oriented Petri net.

[0141] Similar to step 301, the electronic device may also obtain a blocking set of unreliable neighboring resources from the resource-oriented Petri net, so that in subsequent steps, the resource-oriented Petri net may be optimized based on the obtained blocking set.

[0142] Optionally, the electronic device can first search for unreliable resources in the resource-oriented Petri net based on pre-set parameters, and determine the fault-dependent resources, unreliable neighboring resources and reliable resource production paths based on the unreliable resources in the resource-oriented Petri net, and then determine the blocking set of unreliable neighboring resources based on the fault-dependent resources, unreliable neighboring resources and reliable resource production paths.

[0143] The preset parameters are the data of the electronic device that is input simultaneously when the resource-oriented Petri net is input into the electronic device.

[0144] Specifically, the electronic device may first search for unreliable resources in the resource-oriented Petri net according to the input parameters, and search for fault-dependent resources according to the loop subnet where each unreliable resource is located and the path corresponding to the loop subnet.

[0145] For example, if there is an unreliable resource between the current resource or the remaining path, and the token in the resource must use the unreliable resource in its remaining path, then the resource is failure-dependent. Figure 1 , p3 is an unreliable resource, so p3 is fault-dependent. Because there is an unreliable resource p3 in the remaining path of p2, and the token in p2 must use p3 in its remaining path, so p2 is also faulty. Because the token in p1 may use the reliable resource p6 in its remaining path, is p1 a fault-dependent resource? That is, the set of fault-dependent resources P FD ={p2,p3}.

[0146] Furthermore, electronic devices can also search for unreliable neighboring resources based on the loop subnet where each unreliable resource is located and the path corresponding to the loop subnet. For example, if a token in place p enters an unreliable resource p′ in its remaining path, then p is called an unreliable neighboring resource of p′, where p≠p0. Figure 1 , because the tokens in p1, p2, p4, and p5 will enter the unreliable resource p3 in their remaining routes, that is, the set of unreliable neighboring resources is N p ={p1,p2,p3,p4,p5}.

[0147] In addition, the electronic device can also find a reliable resource production path based on the loop subnet where each unreliable resource is located and the path corresponding to the loop subnet, that is, find a path that does not require unreliable resources. For example, see Figure 1 , corresponding to the above example, the set of unreliable neighborhood resources is N p ={p1,p2,p3,p4,p5}, then the set of reliable neighborhood resources is

[0148] Accordingly, after determining the fault-dependent resources, unreliable neighboring resources, and reliable resource production paths, the electronic device may determine a blocking set of unreliable neighboring resources based on the fault-dependent resources, unreliable neighboring resources, and reliable resource production paths.

[0149] Among them, the blocking set can be in Indicates accumulation With N p The intersection between , i represents any integer between 1 and k, and k is a positive integer.

[0150] It should be noted that the embodiment of the present application is described by taking the example of first executing steps 301 to 303 and then executing steps 304 to 305. In actual applications, steps 304 to 305 can also be executed first and then steps 301 to 303, or steps 301 to 303 and steps 304 to 305 can be executed at the same time. The embodiment of the present application does not specifically limit the order of executing steps 301 to 303 and steps 304 to 305.

[0151] Step 305: Generate a robust control place according to the blocking state of the blocking set.

[0152] After obtaining the blocking set, the electronic device can further screen each place in the blocking set to determine a fully blocked blocking state, and then generate a robust control place based on an initial blocked state in the fully blocked blocking state.

[0153] Optionally, for each library in the blocking set, the electronic device can first determine whether the blocking state corresponding to the library meets the preset blocking full condition, determine the blocking full blocking state, that is, the blocking state that meets the blocking full condition, and then generate a robust control library for the blocking state.

[0154] For example, if there is When a resource failure occurs, t∈p˙ cannot be triggered by any token in p, and p has no remaining buffer, then This is called blocking full. A resource failure can be characterized as an unreliable resource that prevents any state from transitioning to the next state. Furthermore, full capacity is used to indicate the absence of a buffer.

[0155] Furthermore, in the process of generating the robust control library, for each blocking state, the electronic device may first determine whether the blocking state comes from other blocking states, that is, determine whether the blocking state is an initial blocking state.

[0156] If the blocking state comes from other blocking states, the blocking state is ignored and no robust control places are generated for the blocking state. However, if the blocking state does not come from other blocking states, it means that the blocking state is the initial blocking state, and a robust control place can be generated based on the blocking state.

[0157] For example, Among them, the library set of this state is represented as P FBM ={p1,p2,···,p n}. represents a set of blocking states, The blocking state in must be the initial blocking state, from which a new blocking state will be obtained.

[0158] If there is a production process p i1 <p i2 <···<p ik And {p i1 ,p i2 ,···,p ik}∈P FBM , then define a control strategy v as:

[0159] 1) The output arc of v points to transition t i0 ∈ · p i1 , the input arc points to the transition where t i0 belong Emission transition t i0 Will move a token to p i1, p ik The token in will make the Change ik emission;

[0160] 2) M(v) is equal to Where m is a member of the set P FBM -P FD The number of places in .

[0161] Step 306: Output a controlled resource-oriented Petri net according to the deadlock control place and the robust control place.

[0162] After the electronic device generates the corresponding deadlock control places and robust control places, the electronic device can adjust and optimize the input resource-oriented Petri net according to the deadlock control places and robust control places to obtain a controlled resource-oriented Petri net, thereby obtaining a controlled resource-oriented Petri net that matches the automatic manufacturing system based on the generated control strategy.

[0163] Optionally, in the process of generating a controlled resource-oriented Petri net, the electronic device can first combine the deadlock control library and the robust control library, and then add the combined control strategy to the resource-oriented Petri net, and adjust the parameters in the resource-oriented Petri net accordingly through the combined control strategy, so as to obtain a controlled resource-oriented Petri net.

[0164] Specifically, according to Definition 5, the blocking state is caused by the fullness of the unreliable neighboring resource set. According to Definition 10, the control place is designed to ensure that the fault-dependent resources have enough free cache space.

[0165] When an unreliable resource fails, artifacts in its remaining paths that require the failed resource can be cached in the failed resource's cache, ensuring smooth operation of production paths that don't use the failed resource. Therefore, the robust deadlock controller provided by the embodiments of this application is robust to resource failures.

[0166] For example, see Figure 1 ,based on Figure 1 In the resource-oriented Petri net model of the automatic manufacturing system shown in FIG, a robust deadlock controller is designed according to steps 301-305. Figure 1 There are 3 deadlock states and 3 blocking states. The design methods of deadlock control place and blocking control place are given below respectively.

[0167] 1) Control place v1 and its related transitions are · v1={t4,t 10}, M(v1) = 2 + 2 - 1 = 3.

[0168] 2) Control place v2 and its related transitions are · v2 = {t4, t 11}. M(v2) = 2 + 1 - 1 = 2.

[0169] 3) Control place v3 and its related transitions are · v3 = {t5, t 10}. M(v3) = 2 + 1 - 1 = 2.

[0170] 4) According to Definition 10, there exists a production path p1 < p2 < p3 and P FBM4 -P [[ID=三十二]] FD = {p1, p2, p3} - {p2, p3} = {p1}. Then the control place v4 and its related transitions are · v4 = {t4}, M(v4) = K(p1) + K(p2) + K(p3) = 1 + 1 + 2 - 1 = 3.

[0171] 5) According to Definition 10, there exist two production paths which are respectively p1 < p2 < p3 and p3. P FBM5 -P FD = {p1, p2, p3} - {p2, p3} = {p1}. Then the control place v5 and its related transitions are designed as · v5 = {t3, t 12}. M(v5) = K(p1) + K(p2) + K(p3) = 1 + 1 + 2 - 1 = 3.

[0172] 6) According to Definition 10, there exist two production paths which are respectively p1 < p2 < p3 and p3. P FBM6 -P FD [[ID=六十九]] · = {p1, p2, p3} - {p2, p3} = {p1}. Then the control place v6 and its related transitions are designed as · v6 = {t4, t}. M(v6) = K(p1) + K(p2) + K(p3) = 1 + 1 + 2 - 1 = 3; ;

[0173] It should be noted that there are some inaccuracies in the original Chinese text (such as "三十二" in line 31 which seems to be a wrong character). The above translation is based on the corrected understanding as much as possible.Merge deadlock control places v1, v2 and v3 into And merged the Robust Control Place v4, v5 and v6 into See also Figure 4 , gives the robust control place and deadlock control place, as well as the related control transitions, see Figure 5 , a controlled resource-oriented Petri net is given, and Table 1 gives the robust control place and deadlock control place and related control transitions.

[0174] Table 1 Robust deadlock control places and their related transitions

[0175]

[0176] To summarize, the strategy generation method proposed in the embodiment of the present application obtains each loop subnet in the resource-oriented Petri net to obtain a loop subnet set, and searches for the first bad state in the resource-oriented Petri net based on the loop subnet set, and then generates a deadlock control place based on multiple first bad states; and, in the resource-oriented Petri net, obtains a blocking set of unreliable neighborhood resources, and generates a robust control place based on the blocking state of the blocking set, and then synthesizes a robust deadlock controller based on the deadlock control place and the robust control place to output a controlled resource-oriented Petri net.

[0177] This application proposes a maximum permissible robust deadlock control strategy for a resource-oriented Petri net model of an automated manufacturing system. By analyzing the structural characteristics and state information of the resource-oriented Petri net model, a robust deadlock controller is designed to ensure that the automated manufacturing system can continue to operate without using paths that do not require the use of failed resources when a resource fails. This control strategy can avoid enumerating the reachable graph of the entire system network, achieve maximum permissible control, and have low controller structural complexity and computational complexity.

[0178] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0179] Based on the same inventive concept, an embodiment of the present application also provides an automatic manufacturing system. Figure 6 A schematic diagram of the structure of an automatic manufacturing system provided in an embodiment of the present application is shown in FIG. Figure 6 As shown, the automatic manufacturing system provided in this embodiment includes: a memory 61 and a processor 62, the memory 61 is used to store a computer program 63; the processor 62 is used to execute the method described in the above method embodiment when calling the computer program 63.

[0180] The automatic manufacturing system provided in this embodiment can execute the above method embodiment, and its implementation principle and technical effect are similar, which will not be repeated here.

[0181] An embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the method described in the above method embodiment is implemented.

[0182] An embodiment of the present application further provides a computer program product. When the computer program product is run on an automatic manufacturing system, the automatic manufacturing system implements the method described in the above method embodiment when executing the computer program product.

[0183] If the above-mentioned integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application can implement all or part of the processes in the above-mentioned method embodiments by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When executed by a processor, the computer program can implement the steps of each of the above-mentioned method embodiments. The computer program includes computer program code, which can be in source code form, object code form, executable file, or some intermediate form. The computer-readable storage medium can at least include: any entity or device capable of carrying computer program code to the camera / terminal device, recording medium, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal, and software distribution medium. For example, a USB flash drive, mobile hard drive, magnetic disk, or optical disk. In some jurisdictions, based on legislation and patent practice, computer-readable media cannot be electric carrier signals or telecommunication signals.

[0184] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.

[0185] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0186] In the embodiments provided in this application, it should be understood that the disclosed devices / equipment and methods can be implemented in other ways. For example, the device / equipment embodiments described above are merely schematic. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0187] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or collections thereof.

[0188] It will also be understood that the term "and / or" used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.

[0189] As used in this specification and the appended claims, the term "if" can be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.

[0190] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0191] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.

[0192] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some or all of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application.

Claims

1. A method for generating a maximum permissible robust deadlock control strategy for an automated manufacturing system, characterized in that: The method comprises: In the resource-oriented Petri net of the automatic manufacturing system, a plurality of loop subnets are obtained to obtain a loop subnet set; According to the loop subnet set, searching for the first bad state in the resource-oriented Petri net; generating a deadlock control library according to the plurality of first encountered bad states; In the resource-oriented Petri net, a blocking set of unreliable neighboring resources is obtained; generating a robust control place according to the blocking state of the blocking set; According to the deadlock control place and the robust control place, a controlled resource-oriented Petri net is output.

2. The method according to claim 1, characterized in that The step of searching for a first bad state in the resource-oriented Petri net according to the loop subnet set includes: For each loop subnet in the loop subnet set, searching for the loop subnet corresponding to the deadlock state; According to the plurality of loop subnets corresponding to the deadlock states, the first encountered bad state is searched through the plurality of deadlock states.

3. The method according to claim 2, characterized in that The searching for the loop subnet corresponding to the deadlock state includes: Determining the resource capacity corresponding to the loop subnet; If the resource capacity corresponding to the loop subnet reaches the upper capacity limit, it is determined that the loop subnet corresponds to the deadlock state; Alternatively, if the loop subnet has no external output, it is determined that the loop subnet corresponds to the deadlock state.

4. The method according to claim 2, characterized in that The step of searching for the first encountered bad state through the plurality of deadlock states according to the plurality of loop subnets corresponding to the deadlock states includes: For each of the deadlock states, if any legal state in the resource-oriented Petri net changes to the deadlock state by emitting any transition, the deadlock state corresponding to the loop subnet is determined to be the first-encountered bad state.

5. The method according to claim 1, wherein The step of generating a deadlock control library according to the plurality of first encountered bad states includes: For each of the first encountered bad states, determining a minimum covering set of the first encountered bad states; For each of the first-encountered bad states in the minimum covering set, the deadlock control place is generated.

6. The method according to claim 1, characterized in that Obtaining a blocking set of unreliable neighboring resources in the resource-oriented Petri net includes: Searching for unreliable resources in the resource-oriented Petri net according to pre-set parameters; In the resource-oriented Petri net, determining fault-dependent resources, unreliable neighboring resources, and reliable resource production paths based on the unreliable resources; The blocking set of the unreliable neighboring resources is determined according to the fault-dependent resources, the unreliable neighboring resources, and the reliable resource production path.

7. The method according to claim 1, characterized in that Generating a robust control place according to the blocking state of the blocking set includes: For each place in the blocking set, determining whether the blocking state corresponding to the place satisfies a preset blocking full condition; If the blocking state corresponding to the place satisfies the blocking fullness condition, the robust control place is generated for the blocking state.

8. The method according to claim 7, characterized in that The generating the robust control repository for the blocking state includes: For each of the blocking states, determining whether the blocking state is derived from other blocking states; If the blocking state comes from other blocking states, the blocking state is ignored; If the blocking state does not come from other blocking states, the robust control place is generated according to the blocking state.

9. The method according to any one of claims 1 to 8, characterized in that: Outputting a controlled resource-oriented Petri net according to the deadlock control place and the robust control place includes: The deadlock control place and the robust control place are combined and added into the resource-oriented Petri net to obtain the controlled resource-oriented Petri net.