Skip to Main Content
Petri net based models for plants and recipes are presented. The plant consists of processors and a transporting system connecting the processors. Processors are typically resources like reactors and tanks, while the transporting system consists of, for example, pipes, valves and pumps. Starting with these models we synthesize a discrete, modular supervisor which coordinates the concurrent execution of a number of recipes within a plant. The main task of the supervisor is to restrict the system's resource booking behavior such as to avoid deadlock situations, that is, situations from which we cannot complete our recipes. Deadlocks can occur when allocating processors or when allocating connections between processors, i.e., resources in the transporting system. These two problems are independent of each other. Thus, a modular supervisor can be synthesized that consists of three modules: a recipe module that controls the plant in a command-response fashion and two deadlock modules. The first coordinates the allocation of processors, and the other coordinates the allocation of resources in the transporting system. This separation of the supervisor into three modules reduces the computational complexity when synthesizing the supervisor and produces a much smaller supervisor. This is very important in industrial sized applications, since deadlock avoidance problems belong to the class of 𝒩𝒫-hard problems. We also discuss similarities between batch systems and flexible manufacturing systems.