# Modeling and Verification of Reconfigurable and Energy-Efficient Manufacturing Systems

Authors: Jiafeng Zhang; Mohamed Khalgui; Wassim Mohamed Boussahel; Georg Frey; ChiTin Hon; Naiqi Wu; Zhiwu Li
Journal: Discrete Dynamics in Nature and Society
 (2015)

---

## Abstract

This paper deals with the formal modeling and verification of reconfigurable and energy-efficient manufacturing systems (REMSs) that are considered as reconfigurable discrete event control systems. A REMS not only allows global reconfigurations for switching the system from one configuration to another, but also allows local reconfigurations on components for saving energy when the system is in a particular configuration. In addition, the unreconfigured components of such a system should continue running during any reconfiguration. As a result, during a system reconfiguration, the system may have several possible paths and may fail to meet control requirements if concurrent reconfiguration events and normal events are not controlled. To guarantee the safety and correctness of such complex systems, formal verification is of great importance during a system design stage. This paper extends the formalism reconfigurable timed net condition/event systems (R-TNCESs) in order to model all possible dynamic behavior in such systems. After that, the designed system based on extended R-TNCESs is verified with the help of a software tool SESA for functional, temporal, and energy-efficient properties. This paper is illustrated by an automatic assembly system.


---

## Body

## 1. Introduction

A reconfigurable manufacturing system (RMS) is designed at the outset for rapid change in structure, as well as in hardware and software components, in order to quickly adjust production capacity and functionality within a part family in response to sudden changes in market or in regulatory requirements [1]. A RMS should be designed with several configurations (behavior modes) to, respectively, meet different production requirements in various conditions. There are two types of reconfigurations: static and dynamic reconfigurations. Generally, a static reconfiguration is applied offline to modify a RMS extensively such as adjusting architecture of physical systems and removing obsoleted machines, whereas a dynamic system reconfiguration, to switch a RMS from one configuration to another at runtime, is applied with the aim of fault-tolerance or actively changing system behavior modes [2, 3]. This paper focuses on dynamic RMSs.Traditionally, manufacturing is an energy-intensive process, using motors, steam, and compressed air systems to transform raw materials into durable goods and consumer products [4–6]. Recent research shows that switching machines of a manufacturing system into their energy-efficient modes when they are idle during production can make considerable contribution to the reduction of energy demand and thus can reduce carbon footprint as well as operating costs [7–15]. This paper takes the advantage of dynamic reconfigurations of machines of a RMS between their working modes and energy-efficient modes as a way of reducing system energy consumption. A RMS with such energy-efficient operations is called a reconfigurable and energy-efficient manufacturing system (REMS).REMSs can be abstracted as reconfigurable discrete event systems (DESs) when only their logic behavior properties are investigated. In this paper, a reconfiguration is called a local reconfiguration, if it is applied for switching a machine of a REMS between its working mode and energy-efficient mode. A reconfiguration is named a global reconfiguration if it is applied for switching a REMS between different configurations.A REMS should be able to reconfigure itself smoothly due to changed inner/outer environments at runtime. Meanwhile, normal unreconfigured events should go on occurring whenever they meet their occurrence preconditions. However, uncontrolled concurrence of reconfiguration events and normal events may cause faults such as deadlocks and overflow [16–19]. Therefore, the formal verification is of great importance during design stages.Petri nets [20, 21] have found an extensive application to discrete event systems [22, 23], including automated flexible manufacturing systems [24–28] and reconfigurable systems [29]. Reconfigurable timed net condition/event systems (R-TNCESs) [30, 31] are reconfigurable extensions of timed net condition/event systems (TNCESs) [32, 33]. TNCESs [34, 35] have a visual graph expression, a clear modular structure, and an exact mathematical definition inherited from Petri nets [36–40]. In addition, they have a strong analysis software tool: SESA (http://homepages.engineering.auckland.ac.nz/vyatkin/tools/modelchekers.html) [41]. System behavior properties, such as state/event trajectories and temporal requirements, can be specified by Computation Tree Logic (CTL), extended CTL (eCTL), and timed CTL (TCTL) [42–44] before being checked by SESA automatically. If a property is satisfied by the system, the model checker will return “true”. Otherwise, a counterexample will be returned. Therefore, TNCESs have been widely applied in verification and validation of industry control systems especially for manufacturing systems [45–47]. The verification of a R-TNCES can be performed with the assistance of SESA [30, 31].However, R-TNCESs cannot fully meet our requirements for a REMS. In a R-TNCES, reconfiguration functions model system reconfiguration events and transitions model normal events. However, the concurrence of reconfiguration functions and transitions is forbidden in a R-TNCES, which is in fact inconsistent with system requirements of REMSs. As a result, formal verification of such complex systems cannot be performed.Motivated by the fact aforementioned, this paper extends R-TNCESs. First, the reconfiguration functions of R-TNCESs are assigned with action ranges and concurrent decision functions. After that, they are divided into two types according to their action ranges: major and minor reconfiguration functions. The major ones are used to model global reconfiguration events, whereas the minor ones are applied to model local reconfiguration events. Accordingly, the dynamics of R-TNCESs is updated for these extensions such that the concurrence of reconfiguration events and normal events can be conditionally allowed to guarantee the system correctness. Afterwards, an implementation method for an extended R-TNCES is developed. Finally, the software tool SESA is applied to check system functional, temporal, and energy-efficient properties. An automatic assembly system is used to illustrate this work.The paper is organized as follows. The system specification of REMSs and the applied automatic assembly system are depicted in Section2. The drawbacks of R-TNCESs on analyzing REMSs and the proposed extended R-TNCESs are described in Section 3. The formal verification of a REMS based on extended R-TNCESs is illustrated in Section 4. Finally, Section 5 concludes this paper and briefly presents further studies.


## 2. Reconfigurable and Energy-Efficient Manufacturing Systems

This paper treats a reconfigurable and energy-efficient manufacturing system (REMS) as a reconfigurable discrete event control system. This section presents system specification and interesting system dynamics before it illustrates them with an automatic assembly system.


### 2.1. System Specification

A REMS is designed with a set of configurations to meet various requirements in different execution environments. A configurationCon is defined as (1)Con=Com,Str,Dat,where Com is a set of all activated components in Con, Str defines the structure, that is, the connection relationship and the communication protocol among components of Com, and Dat denotes the set of all global variables and parameters of Con.A REMS is denoted by(2)Sys=∑,Rc,where ∑‍ is the set of n configurations and Rc:∑‍→∑‍ is the reconfigurable controller dealing with system reconfigurations.There are two types of system reconfigurations in a REMS: global and local reconfigurations. The former ones are applied for switching system configurations. The latter ones are applied for switching an activated component between its working mode and energy-efficient mode when the system is in a particular configuration.A REMS starts running as described in one of these configurations. After that, it should be able to change into other configurations smoothly due to the detection of component faults or other well-defined conditions. In addition, in each configuration, local reconfigurations can be applied to components such that the components can reconfigure themselves into their energy-efficient modes to save energy when they are idle and turn back to their working modes when the system needs them.Dynamics of a REMS can be described by the evolution of system states. The evolution is caused by the occurrences of events events. A REMS includes three types of normal events, local reconfiguration events, and global reconfiguration events.(1)
If a normal event occurs, the system changes its state within its current configuration.(2)
If a local reconfiguration event occurs, a component of current configuration switches into its energy-efficient mode or switches back into its working mode.(3)
If a global reconfiguration event occurs, the system switches into another configuration.Meanwhile, during a global or local reconfiguration, if normal events meet their occurring conditions and they are not modified by the occurring reconfiguration events, they should go on occurring. However, this kind of concurrence brings safety threat to the system, since they may cause unboundedness, deadlocks, and even other functional or temporal failings.


### 2.2. Running Example

An automatic assembly system, denoted by AAS, is applied to illustrate works presented in this paper. AAS includes three workstations (W1, W2, and W3) and four robots (Rb1, Rb2, Rb3, and Rb4). It is assumed that robots are high energy consumption machines. The respective time consumption of W1, W2, and W3 to finish a machining task is 40 time units, 30 time unites, and 50 time unites. The time consumption of both Rb1 and Rb2 to finish a task is 20 time units. The time consumption of both Rb3 and Rb4 to finish a task is 25 time units. The default working process diagram of AAS is shown in Figure 1.Figure 1
Default working process diagram of AAS.The main function of AAS is to assemble machine parts into a subassembly of a vehicle, to be marked bySA. Robots Rb1 and Rb2 move machine parts from the input into AAS, transfer machine parts between workstations, and remove trashy machine parts to the output. Dotted arrows in Figure 1 are used to denote the movements of machine parts during an assembly process. On the other hand, SA is shifted along W1, W2, and W3 by robots Rb3 and Rb4. Solid arrows in Figure 1 are used to denote the movement of SA. To make it clear, b0,b1,…, and b6 are used to denote positions where machine parts or SA should be during an assembly process. The main assembly process is briefly described by the following three steps.(1)
The to-be-worked subassemblySA is shifted from input B to b0 by Rb3. A machine part Asp1 is delivered to b4 from the input A. After that, Asp1 and SA are preprocessed on W1. Then, the preprocessed SA is moved to b1 automatically. The preprocessed Asp1 is moved to b4 automatically before being moved to position b5 by Rb1.(2)
SA is transported to b2 from b1 by Rb3. Then, a second preprocess for SA is done by W2. After that, SA is shifted to b3 from b2 by Rb4.(3)
A machine partAsp2 is delivered to b6 by Rb2. Then, W3 starts the assembly after SA is in b3, preprocessed Asp1 is in b5, and Asp2 is in b6. After the assembly, the machined SA is moved out by Rb4. Two other trashy machine parts are removed out of AAS by Rb1 and Rb2, respectively.It is assumed that four behavior modes are designed for AAS. Their work processes are illustrated as follows.(i)
Mode1: Mode1 is the default mode as depicted in Figure 1, where all the robots are applied.(ii)
Mode2: Mode2 is a responding mode when Rb2 breaks down, where Rb1 should update itself to perform the function of Rb2.(iii)
Mode3: Mode3 is applied when Rb4 breaks down during the execution of Mode1, where the work of Rb4 has to be done by Rb3.(iv)
Mode4: Mode4 is applied when both Rb1 and Rb2 break down, where only Rb1 and Rb3 are applied. In this case, Rb1 should cover the function of Rb2 as in Mode2 and Rb3 should cover the function of Rb4 as in Mode3.In each behavior mode, the applied robots should be able to reconfigure themselves into their energy-efficient modes when they are idle and reconfigure themselves back into their working modes when they have new tasks. A local reconfiguration for switching a robot from its working mode to its energy-efficient mode consumes one time unit. Likewise, a local reconfiguration for switching a robot from its energy-efficient mode back to its working mode consumes one time unit, as well.To avoid the halt of a continuous production line, possible dynamic reconfigurations applied for switching AAS between these behavior modes are shown in Figure2. The solid arrows denote global reconfigurations and dotted ones denote local reconfigurations.Figure 2
Possible reconfigurations in AAS.It is assumed that a robot consumes one energy unit per time unit when it works in its working mode. However, it only consumes 30% energy units per time unit when it works in its energy-efficient mode. Note that the numerical value “30%” is an assumption by the authors to facilitate the quantitative analysis on energy-efficient operations. It does not come from any literature on industry systems.Obviously, the possible reconfiguration events of AAS can occur simultaneously with many normal events in it. For example, whenRb1 is being modified by a global reconfiguration or being switched into its energy-efficient mode, only its own work needs to stop for a while and the workstations and other running robots should do their jobs unaffectedly.


## 2.1. System Specification

A REMS is designed with a set of configurations to meet various requirements in different execution environments. A configurationCon is defined as (1)Con=Com,Str,Dat,where Com is a set of all activated components in Con, Str defines the structure, that is, the connection relationship and the communication protocol among components of Com, and Dat denotes the set of all global variables and parameters of Con.A REMS is denoted by(2)Sys=∑,Rc,where ∑‍ is the set of n configurations and Rc:∑‍→∑‍ is the reconfigurable controller dealing with system reconfigurations.There are two types of system reconfigurations in a REMS: global and local reconfigurations. The former ones are applied for switching system configurations. The latter ones are applied for switching an activated component between its working mode and energy-efficient mode when the system is in a particular configuration.A REMS starts running as described in one of these configurations. After that, it should be able to change into other configurations smoothly due to the detection of component faults or other well-defined conditions. In addition, in each configuration, local reconfigurations can be applied to components such that the components can reconfigure themselves into their energy-efficient modes to save energy when they are idle and turn back to their working modes when the system needs them.Dynamics of a REMS can be described by the evolution of system states. The evolution is caused by the occurrences of events events. A REMS includes three types of normal events, local reconfiguration events, and global reconfiguration events.(1)
If a normal event occurs, the system changes its state within its current configuration.(2)
If a local reconfiguration event occurs, a component of current configuration switches into its energy-efficient mode or switches back into its working mode.(3)
If a global reconfiguration event occurs, the system switches into another configuration.Meanwhile, during a global or local reconfiguration, if normal events meet their occurring conditions and they are not modified by the occurring reconfiguration events, they should go on occurring. However, this kind of concurrence brings safety threat to the system, since they may cause unboundedness, deadlocks, and even other functional or temporal failings.


## 2.2. Running Example

An automatic assembly system, denoted by AAS, is applied to illustrate works presented in this paper. AAS includes three workstations (W1, W2, and W3) and four robots (Rb1, Rb2, Rb3, and Rb4). It is assumed that robots are high energy consumption machines. The respective time consumption of W1, W2, and W3 to finish a machining task is 40 time units, 30 time unites, and 50 time unites. The time consumption of both Rb1 and Rb2 to finish a task is 20 time units. The time consumption of both Rb3 and Rb4 to finish a task is 25 time units. The default working process diagram of AAS is shown in Figure 1.Figure 1
Default working process diagram of AAS.The main function of AAS is to assemble machine parts into a subassembly of a vehicle, to be marked bySA. Robots Rb1 and Rb2 move machine parts from the input into AAS, transfer machine parts between workstations, and remove trashy machine parts to the output. Dotted arrows in Figure 1 are used to denote the movements of machine parts during an assembly process. On the other hand, SA is shifted along W1, W2, and W3 by robots Rb3 and Rb4. Solid arrows in Figure 1 are used to denote the movement of SA. To make it clear, b0,b1,…, and b6 are used to denote positions where machine parts or SA should be during an assembly process. The main assembly process is briefly described by the following three steps.(1)
The to-be-worked subassemblySA is shifted from input B to b0 by Rb3. A machine part Asp1 is delivered to b4 from the input A. After that, Asp1 and SA are preprocessed on W1. Then, the preprocessed SA is moved to b1 automatically. The preprocessed Asp1 is moved to b4 automatically before being moved to position b5 by Rb1.(2)
SA is transported to b2 from b1 by Rb3. Then, a second preprocess for SA is done by W2. After that, SA is shifted to b3 from b2 by Rb4.(3)
A machine partAsp2 is delivered to b6 by Rb2. Then, W3 starts the assembly after SA is in b3, preprocessed Asp1 is in b5, and Asp2 is in b6. After the assembly, the machined SA is moved out by Rb4. Two other trashy machine parts are removed out of AAS by Rb1 and Rb2, respectively.It is assumed that four behavior modes are designed for AAS. Their work processes are illustrated as follows.(i)
Mode1: Mode1 is the default mode as depicted in Figure 1, where all the robots are applied.(ii)
Mode2: Mode2 is a responding mode when Rb2 breaks down, where Rb1 should update itself to perform the function of Rb2.(iii)
Mode3: Mode3 is applied when Rb4 breaks down during the execution of Mode1, where the work of Rb4 has to be done by Rb3.(iv)
Mode4: Mode4 is applied when both Rb1 and Rb2 break down, where only Rb1 and Rb3 are applied. In this case, Rb1 should cover the function of Rb2 as in Mode2 and Rb3 should cover the function of Rb4 as in Mode3.In each behavior mode, the applied robots should be able to reconfigure themselves into their energy-efficient modes when they are idle and reconfigure themselves back into their working modes when they have new tasks. A local reconfiguration for switching a robot from its working mode to its energy-efficient mode consumes one time unit. Likewise, a local reconfiguration for switching a robot from its energy-efficient mode back to its working mode consumes one time unit, as well.To avoid the halt of a continuous production line, possible dynamic reconfigurations applied for switching AAS between these behavior modes are shown in Figure2. The solid arrows denote global reconfigurations and dotted ones denote local reconfigurations.Figure 2
Possible reconfigurations in AAS.It is assumed that a robot consumes one energy unit per time unit when it works in its working mode. However, it only consumes 30% energy units per time unit when it works in its energy-efficient mode. Note that the numerical value “30%” is an assumption by the authors to facilitate the quantitative analysis on energy-efficient operations. It does not come from any literature on industry systems.Obviously, the possible reconfiguration events of AAS can occur simultaneously with many normal events in it. For example, whenRb1 is being modified by a global reconfiguration or being switched into its energy-efficient mode, only its own work needs to stop for a while and the workstations and other running robots should do their jobs unaffectedly.


## 3. Extended R-TNCES

Reconfigurable timed net condition/event systems (R-TNCESs) [30, 31] are extensions of timed net condition/event systems (TNCESs) [34, 35]. Reconfiguration functions of R-TNCESs can be used to model global reconfiguration events of REMSs. However, they are not proper to model local reconfiguration events of REMSs directly. In addition, the concurrence of normal events and reconfiguration events is currently not allowed in R-TNCESs. Therefore, in order to perform correct formal verification of a REMS, this paper extends R-TNCESs. This section briefly recalls basic conceptions of R-TNCESs, analyzes the drawbacks of R-TNCEs on investigating REMSs, and represents the proposed extended R-TNCESs.


### 3.1. R-TNCEs

Definition 1 (see [30]).
A R-TNCES is a structureRN=(B,R), where B is a behavior module and R is a control module.
The behavior moduleB is a union of n superposed TNCESs. For any i∈{0,…,n-1}, the TNCES Γi is denoted by Γi=(NΓi,z0i) with NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi). Then B can be represented as (3)B=P,T,F,CN,EN,EM,DC,Z0.P=P0∪P1∪⋯∪Pn-1 (resp., T=T0∪T1∪⋯∪Tn-1) is a superset of places (resp., transitions). F⊆(P×T)∪(T×P) is a superset of flow arcs. CN⊆(P×T) (resp., EN⊆(T×T)) is a superset of condition (resp., event) signals. DC=DC0∪DC1∪⋯∪DCn-1 is a set of time intervals to input flow arcs. EM: T→{⟏,⟎} maps an event processing mode (AND or OR) for each transition. Let Z0=(M0,D0), where M0:P→{0,1} is the initial marking. D0:P→{0} is the initial clock position. Ω={NΓ0,NΓ1,…,NΓn-1} is a set of all TNCES structures that can be represented by RN.
The control moduleR is a set of reconfiguration functions. A reconfiguration function r is a structure r=(Cond,s,x). Cond→{true,false} is the precondition of r. s:Ω→Ω is the structure modification instruction. x:R(NΓi,z0i)→Z0j is the state correlation function, where Z0j is a set of feasible initial states of Γj. r⋆=Γi=(NΓi,z0i) (resp., r⋆=Γj=(NΓj,z0j)) denotes the TNCES before (resp., after) the implementation of r.Definition 2 (see [30]).
A stateZ of R-TNCES RN is a pair NΓ,z, where NΓ∈Ω identifies the activated TNCES with NΓ=(P,T,F,CN,EN,em,DC), and z=(m,d) is a state of NΓ with m:P→{0,1} and d:P→{0,1,2,…}.In a R-TNCES, each TNCES in the behavior module models a configuration. For a R-TNCESRN, only one of the TNCESs of the behavior module B is activated at the beginning until a reconfiguration function is implemented. Other TNCESs with net structures defined in Ω can be activated only after implementing reconfiguration functions. At any time, only one of the TNCESs with net structures defined in Ω is activated.If a reconfiguration functionr=(Cond,s,x) meets its precondition, that is, Cond=True, it is enabled. A reconfiguration function can fire if it is enabled, that is, to implement it. The evolution of a R-TNCES depends on what events (reconfiguration functions or transitions) take place. Let Γi be the activated TNCES with Γi=(NΓi,z0i), where NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi). If a maximal step u∈Ti fires, Γi evolves from its one inner state to another. However, if a reconfiguration function r fires, then Γi is transformed into Γj by changing its net structure and updating its state, where ⋆r=Γi, r⋆=Γj, and Γj=(NΓj,z0j).


### 3.2. Drawbacks of R-TNCESs

The TNCES models for the four behavior modes of AAS are denoted byΓ1=(NΓ1,z10), Γ2=(NΓ2,z20), Γ3=(NΓ3,z30), and Γ4=(NΓ4,z40), respectively. The set of all possible reconfiguration events of AAS is marked by R={r1,s,r2,s,r3,s,r4,s,r1,s-1,r2,s-1,r3,s-1,r4,s-1,r1,2,r1,3,r1,4,r2,4,r3,4}. The reconfiguration event ri,s indicates a local reconfiguration that transforms robot Rbi into its energy-efficient mode and ri,s-1 is the reverse of ri,s, that is, to transform robot Rbi from its energy-efficient mode into its working mode. The implementation of the events ri,s and ri,s-1 does not change the current behavior mode but can switch robot Rbi between its working mode and energy-efficient mode according to its busy/idle status and waiting time. Finally, ri,j (i≠j) denotes a global reconfiguration event that transforms AAS from the configuration Mode i into Mode j.The firing of a reconfiguration function of a R-TNCES changes the system configuration. As a consequence, if reconfiguration functions are applied to model local reconfiguration events for switching components between their working modes and energy-efficient modes directly, the number of system configurations should be enlarged. For example, configuration Mode 4 should be considered as four different configurations: (1) BothRb1 and Rb3 are in their working modes, (2) Rb1 is in working mode and Rb3 is in energy-efficient mode, (3) Rb3 is in working mode and Rb1 is in energy-efficient mode, and (4) both Rb1 and Rb3 are in their energy-efficient modes. These four configurations are with the same structure. However, they should be verified separately. Obviously, this increases the verification cost and burdens the whole design process.Generally, transitions in a R-TNCES model normal events of a reconfigurable discrete event control system, whereas reconfiguration functions are used to model system reconfiguration events. However, the concurrence of reconfiguration functions and transitions is not allowed in R-TNCESs, which is in fact inconsistent with requirements of REMSs. To make it clearer, let us take the modulesRb3, Rb4, and W2 as an example. Their TNCES-based models in Mode 1 and Mode 4 are shown in Figures 3 and 4, respectively. The differences between them are marked by dotted lines.Figure 3
TNCES-based model ofR3, R4, and W2 in Mode 1.Figure 4
TNCES-based model ofR3, R4, and W2 in Mode 4.Example 3.
Suppose that a reconfiguration functionr1,4 gets enabled at state S3 when AAS is in Mode 1. The physical meaning of S3 is that (1) Rb3 just finishes transporting SA to b2 and (2) W2 is ready to process SA. Assume that at this time a fault is detected in Rb4. Rb4 should be removed. Meanwhile, Rb3 must update itself soon in order to cover Rb4’s task. According to the design requirements for AAS, W2 should go on working “naturally” at this time, that is, the enabled transition t3 can fire at this state. However, the concurrence of reconfiguration functions and transitions is not allowed in R-TNCESs. Therefore, at state S3, only r1,4 fires alone and AAS turns to the state S1′. Afterwards, t3 fires, which leads to the next state S2′. However, if r1,4 and t3 fire together, AAS turns to the state S2′ directly without generating S1′. The state transition graph of this case is shown in Figure 5.Figure 5
State transition graph of Example3.Example 4.
Assume that two reconfiguration functionsr3,s and r4,s get enabled simultaneously at state S4. The physical meaning of S4 is that (1) W2 just starts its work and (2) both Rb3 and Rb4 are idle. The firing of r3,s and r4,s only changes the states inside their modules but neither alters the system structure nor enables/disables any other transitions outside. That is to say, the firing of r3,s and r4,s does not change the current system configuration. According to the design requirements for AAS, both Rb3 and Rb4 can reconfigure themselves into energy-efficient modes freely when they are idle for more than two time units. However, the concurrence of multiple reconfiguration functions is not allowed in R-TNCESs. Therefore, at state S4, only r4,s or r3,s fires alone. After that, the remaining one fires since it is still enabled. However, if r3,s and r4,s fire together, AAS turns to the state S7′ directly. The state transition graph of this case is shown in Figure 6.Figure 6
State transition graph of Example4.In conclusion, the original R-TNCESs are not sufficient to model a REMS. The reason can be explained from the following three aspects.(i)
Reconfigurations at the component level only change component behavior modes between their working modes and energy-efficient modes rather than changing system configurations. If this kind of reconfigurations is modeled by reconfiguration functions directly, the number of system configurations should be enlarged, which increases the verification cost and burdens the whole design process.(ii)
The concurrence of reconfiguration functions and transitions is not allowed in R-TNCESs. However, from the above examples, the concurrence of reconfiguration events and normal events is a common phenomenon in a REMS.(iii)
Since the local reconfigurations for energy-efficient operations cannot be properly described, their corresponding dynamics and reasonable analysis cannot be performed.To this end, this paper extends R-TNCESs to achieve two aims. First, all possible events including concurrent events that may occur in REMSs can be properly described. Second, the concurrence of reconfiguration functions and transitions should be controlled to ensure the system correctness.


### 3.3. Extended R-TNCESs

An extended R-TNCES has the same structure as the original R-TNCES. It is composed of a behavior module and a control module, denoted byeRN={B,R}. The definition of system states is not changed, as shown in Definition 2 in Section 3.1. However, in the extended R-TNCES, reconfiguration functions are newly assigned with action ranges and concurrent decision functions. In addition, the firing rules of transitions and reconfiguration functions are updated such that they are conditionally allowed to fire concurrently.


#### 3.3.1. Modified Reconfiguration Functions

In order to model the two types of reconfiguration events in a REMS directly, a concept, namely,action range, is developed for each reconfiguration function of a R-TNCES. In addition, aconcurrent decision function is also assigned to a reconfiguration function to constrain concurrent transitions that may lead to undesired states such as deadlocks and overflow during a reconfiguration. For the sake of brevity, a reconfiguration function indicates a modified reconfiguration function in what follows.Definition 5.
A reconfiguration functionr of an extended R-TNCES eRN is a structure r=(Cond,s,x,Λ,Π). Cond→{true,false} is the precondition of r. s: Ω→Ω is the structure modification instruction. x:R(NΓi,z0i)→Z0j is the state correlation function, where Z0j is a set of feasible initial states of Γj. ⋆r=Γi=(NΓi,z0i) (resp., r⋆=Γj=(NΓj,z0j)) denotes the TNCES before (resp., after) r fires. Λ∈(NΓi∪NΓj) denotes the action range of r. Π(r,Z)→T is a concurrent decision function deciding a set of forbidden transitions that cannot fire together with r at state Z.The reconfiguration functions of extended R-TNCESs are divided into two types: major and minor reconfiguration functions. For a reconfiguration functionr=(Cond,s,x,Λ,Π) with ⋆r=Γi=(NΓi,z0i) and r⋆=Γj=(NΓj,z0j), it is a major reconfiguration function if and only if NΓi≠NΓj. Otherwise, it is a minor reconfiguration function. Let Rma and Rmi denote the sets of major and minor reconfiguration functions of eRN, respectively. Then we have R=Rma∪Rmi and Rma∩Rmi=∅.The implementation (firing) of a major reconfiguration function changes the structure of the current activated TNCES, whereas the implementation (firing) of a minor reconfiguration function only adjusts partial states of the activated TNCES within its action range.Similar to Petri nets, the “conflict” concept is proposed for two enabled reconfiguration functions. We have the following two cases.(1)
For two reconfiguration functions within the same type, that is, both being minor or major reconfiguration functions, if their action ranges have intersections, they are conflicting.(2)
For a minor reconfiguration function and a major reconfiguration function, if the action range of the minor reconfiguration function is not completely covered by that of the major reconfiguration function, they are conflicting.If two reconfiguration functions are conflicting, they cannot be implemented simultaneously. The symbol r1∥r2 denotes that reconfiguration functions r1 and r2 are not conflicting.Similar to the definition ofsteps in TNCES, a r-step in an extended R-TNCES is a maximal set of reconfiguration functions that can fire simultaneously at a particular state. A r-step should satisfy the following two conditions.(1)
For any two reconfiguration functionsri and rj (ri≠rj) in a r-step γ, ri and rj are not conflicting; that is, ri∥rj.(2)
There does not exist any other maximal set of reconfiguration functionsγ′ such that γ⊂γ′.Accordingly, two r-steps γ1 and γ2 are conflicting, if ∃r1∈γ1, ∃r2∈γ2, r1≠r2, r1 and r2 are conflicting.


#### 3.3.2. Dynamics of Extended R-TNCESs

Suppose that, at stateZ=NΓ,z, multiple reconfiguration functions get enabled, to be denoted by(4)R∗=γ1∪γ2∪⋯∪γg,where γi (i∈[1,g]) is a maximal r-step at Z and, for all i, j∈[1,g], i≠j, γi and γj are conflicting. At the same state Z, the set of all enabled transitions is denoted by(5)T∗=u1∪u2∪⋯∪uk,where ui (i∈[1,k]) is a maximal step and, for all i, j∈[1,k], i≠j, ui and uj are conflicting. For more information on how these steps are computed, please see [34, 35].As a consequence, different compositions ofr-steps and steps can occur simultaneously at this state. Given an enabled reconfiguration function r, we use D·T (resp., D·P) to denote the set of deleted transitions (resp., deleted places) and A·T (resp., A·P) to denote the set of added transitions (resp., added places) by firing it, where ⋆r=Γi=(NΓi,z0i), r⋆=Γj=(NΓj,z0j), NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi), and NΓj=(Pj,Tj,Fj,CNj,ENj,emj,DCj). We have the following two cases.(1) For a transitiont∈Ti, if it is enabled simultaneously with a minor reconfiguration function r=(Cond,s,x,Λ,Π) at state Z=NΓ,z and t∉Λ, then t can fire simultaneously with r; that is, t∉Π(r,Z).(2) For a transitiont∈Ti, if it is enabled simultaneously with a major reconfiguration function r=(Cond,s,x,Λ,Π) at state Z=NΓ,z, then we have the following two subcases.(A)
A spontaneous transitiont is forbidden to be concurrent with r at Z, if it meets one of the following conditions.
(i)
If it is deleted byr, that is, t∈D·T, it is forbidden by r; that is, t∈Π(r,Z).(ii)
Ift∉D·T and all its elements are not changed by firing r, then it is allowed to fire simultaneously with r. Formally, if t•i=t•j, ti•=tj•, t-i=t-j, t~i=t~j=∅, and emti=emtj, we have t∉Π(r,Z).(iii)
Ift∉D·T, some of its elements are modified by r, which include its preset, postset, source places, and firing mode, and we have the following two cases.
(a)
The preset, source places, and firing mode oft decide whether t is enabled after the firing of r. Therefore, if its preset, source places, or firing mode is changed by r, it can fire simultaneously with r. Formally, if •ti≠t•j, t-i≠t-j, or emti≠emtj, then t∉Π(r,Z).(b)
The postset oft does not change its enabling condition but influences the structure of the net. Therefore, it is forbidden by r. Formally, if t•i≠t•j, we have t∈Π(r,Z).(B)
A forced transitiont is forbidden to be concurrent with r at Z, if it further meets one of the following conditions.
(i)
Its firing mode is⟏ and all of its forcing transitions are forbidden to be concurrent with r; that is, if emi(t)=emj(t)=⟏ and, for all t′∈t~, t′∉Π(r,Z), then t∈Π(r,Z).(ii)
Its firing mode is⟎ and at least one of its forcing transitions is forbidden by r; that is, if emi(t)=emj(t)=⟎ and ∃t′∈t~, t′∉Π(r,Z), then t∈Π(r,Z).Since an extended R-TNCES allows the concurrence of multiple reconfiguration functions and transitions, the reachability graph of an extended R-TNCES is defined as follows.Definition 6.
The reachability graph of an extended R-TNCESeRN is a combination of several labeled directed graphs whose nodes are the states of eRN and whose arcs are of three kinds: steps, r-steps, and combinations of a step and a r-step.(i)
The arc from stateNΓi,zi to state NΓi,z′i is denoted by a step u represented by NΓi,zi[u〉NΓi,z′i, where z′i∈R(NΓi,zi).(ii)
The arc from stateNΓi,zi to state NΓj,zj is labeled with a r-step γ represented by NΓi,zi[γ〉NΓj,zj, if γ contains major reconfiguration functions with NΓi≠NΓj. Otherwise, we have NΓi=NΓj and zj∉R(NΓi,zi).(iii)
The arc fromNΓi,zi to state NΓj,zj is labeled with a step and a r-step {R,u} represented by NΓi,zi[γ,u〉NΓj,zj, if γ contains major reconfiguration functions with NΓi≠NΓj. Otherwise, we have NΓi=NΓj.Obviously, the graphical representation of an extended R-TNCES model is the same as that of a R-TNCES model. However, system dynamics get enriched along with the changes of reconfiguration functions. If we use an extended R-TNCES to model AAS, the graphical TNCES models shown in Figures3 and 4 are still correct. However, their reachability graphs get enriched during same reconfiguration.Example 7.
A fragment of the reachability graph of the extended R-TNCES-based model of the example composed ofRb3, Rb4, and W2 is shown in Figure 7. AAS starts running in Mode1. When it arrives at state S3, two minor reconfiguration functions r3,s and r4,s get enabled and fire simultaneously to reconfigure robots Rb3 and Rb4 into their energy-efficient modes. After 28 time units, they reconfigure back to working modes. Assume that R4 is detected to have a fault at state S10, the major reconfiguration function r1,4 gets enabled. In the meantime, t3 gets enabled simultaneously with r1,4. Therefore, t3 fires simultaneously with r1,4, which leads to the transformation of AAS into Mode4.Figure 7
A fragment of the reachability graph of Example7.


## 3.1. R-TNCEs

Definition 1 (see [30]).
A R-TNCES is a structureRN=(B,R), where B is a behavior module and R is a control module.
The behavior moduleB is a union of n superposed TNCESs. For any i∈{0,…,n-1}, the TNCES Γi is denoted by Γi=(NΓi,z0i) with NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi). Then B can be represented as (3)B=P,T,F,CN,EN,EM,DC,Z0.P=P0∪P1∪⋯∪Pn-1 (resp., T=T0∪T1∪⋯∪Tn-1) is a superset of places (resp., transitions). F⊆(P×T)∪(T×P) is a superset of flow arcs. CN⊆(P×T) (resp., EN⊆(T×T)) is a superset of condition (resp., event) signals. DC=DC0∪DC1∪⋯∪DCn-1 is a set of time intervals to input flow arcs. EM: T→{⟏,⟎} maps an event processing mode (AND or OR) for each transition. Let Z0=(M0,D0), where M0:P→{0,1} is the initial marking. D0:P→{0} is the initial clock position. Ω={NΓ0,NΓ1,…,NΓn-1} is a set of all TNCES structures that can be represented by RN.
The control moduleR is a set of reconfiguration functions. A reconfiguration function r is a structure r=(Cond,s,x). Cond→{true,false} is the precondition of r. s:Ω→Ω is the structure modification instruction. x:R(NΓi,z0i)→Z0j is the state correlation function, where Z0j is a set of feasible initial states of Γj. r⋆=Γi=(NΓi,z0i) (resp., r⋆=Γj=(NΓj,z0j)) denotes the TNCES before (resp., after) the implementation of r.Definition 2 (see [30]).
A stateZ of R-TNCES RN is a pair NΓ,z, where NΓ∈Ω identifies the activated TNCES with NΓ=(P,T,F,CN,EN,em,DC), and z=(m,d) is a state of NΓ with m:P→{0,1} and d:P→{0,1,2,…}.In a R-TNCES, each TNCES in the behavior module models a configuration. For a R-TNCESRN, only one of the TNCESs of the behavior module B is activated at the beginning until a reconfiguration function is implemented. Other TNCESs with net structures defined in Ω can be activated only after implementing reconfiguration functions. At any time, only one of the TNCESs with net structures defined in Ω is activated.If a reconfiguration functionr=(Cond,s,x) meets its precondition, that is, Cond=True, it is enabled. A reconfiguration function can fire if it is enabled, that is, to implement it. The evolution of a R-TNCES depends on what events (reconfiguration functions or transitions) take place. Let Γi be the activated TNCES with Γi=(NΓi,z0i), where NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi). If a maximal step u∈Ti fires, Γi evolves from its one inner state to another. However, if a reconfiguration function r fires, then Γi is transformed into Γj by changing its net structure and updating its state, where ⋆r=Γi, r⋆=Γj, and Γj=(NΓj,z0j).


## 3.2. Drawbacks of R-TNCESs

The TNCES models for the four behavior modes of AAS are denoted byΓ1=(NΓ1,z10), Γ2=(NΓ2,z20), Γ3=(NΓ3,z30), and Γ4=(NΓ4,z40), respectively. The set of all possible reconfiguration events of AAS is marked by R={r1,s,r2,s,r3,s,r4,s,r1,s-1,r2,s-1,r3,s-1,r4,s-1,r1,2,r1,3,r1,4,r2,4,r3,4}. The reconfiguration event ri,s indicates a local reconfiguration that transforms robot Rbi into its energy-efficient mode and ri,s-1 is the reverse of ri,s, that is, to transform robot Rbi from its energy-efficient mode into its working mode. The implementation of the events ri,s and ri,s-1 does not change the current behavior mode but can switch robot Rbi between its working mode and energy-efficient mode according to its busy/idle status and waiting time. Finally, ri,j (i≠j) denotes a global reconfiguration event that transforms AAS from the configuration Mode i into Mode j.The firing of a reconfiguration function of a R-TNCES changes the system configuration. As a consequence, if reconfiguration functions are applied to model local reconfiguration events for switching components between their working modes and energy-efficient modes directly, the number of system configurations should be enlarged. For example, configuration Mode 4 should be considered as four different configurations: (1) BothRb1 and Rb3 are in their working modes, (2) Rb1 is in working mode and Rb3 is in energy-efficient mode, (3) Rb3 is in working mode and Rb1 is in energy-efficient mode, and (4) both Rb1 and Rb3 are in their energy-efficient modes. These four configurations are with the same structure. However, they should be verified separately. Obviously, this increases the verification cost and burdens the whole design process.Generally, transitions in a R-TNCES model normal events of a reconfigurable discrete event control system, whereas reconfiguration functions are used to model system reconfiguration events. However, the concurrence of reconfiguration functions and transitions is not allowed in R-TNCESs, which is in fact inconsistent with requirements of REMSs. To make it clearer, let us take the modulesRb3, Rb4, and W2 as an example. Their TNCES-based models in Mode 1 and Mode 4 are shown in Figures 3 and 4, respectively. The differences between them are marked by dotted lines.Figure 3
TNCES-based model ofR3, R4, and W2 in Mode 1.Figure 4
TNCES-based model ofR3, R4, and W2 in Mode 4.Example 3.
Suppose that a reconfiguration functionr1,4 gets enabled at state S3 when AAS is in Mode 1. The physical meaning of S3 is that (1) Rb3 just finishes transporting SA to b2 and (2) W2 is ready to process SA. Assume that at this time a fault is detected in Rb4. Rb4 should be removed. Meanwhile, Rb3 must update itself soon in order to cover Rb4’s task. According to the design requirements for AAS, W2 should go on working “naturally” at this time, that is, the enabled transition t3 can fire at this state. However, the concurrence of reconfiguration functions and transitions is not allowed in R-TNCESs. Therefore, at state S3, only r1,4 fires alone and AAS turns to the state S1′. Afterwards, t3 fires, which leads to the next state S2′. However, if r1,4 and t3 fire together, AAS turns to the state S2′ directly without generating S1′. The state transition graph of this case is shown in Figure 5.Figure 5
State transition graph of Example3.Example 4.
Assume that two reconfiguration functionsr3,s and r4,s get enabled simultaneously at state S4. The physical meaning of S4 is that (1) W2 just starts its work and (2) both Rb3 and Rb4 are idle. The firing of r3,s and r4,s only changes the states inside their modules but neither alters the system structure nor enables/disables any other transitions outside. That is to say, the firing of r3,s and r4,s does not change the current system configuration. According to the design requirements for AAS, both Rb3 and Rb4 can reconfigure themselves into energy-efficient modes freely when they are idle for more than two time units. However, the concurrence of multiple reconfiguration functions is not allowed in R-TNCESs. Therefore, at state S4, only r4,s or r3,s fires alone. After that, the remaining one fires since it is still enabled. However, if r3,s and r4,s fire together, AAS turns to the state S7′ directly. The state transition graph of this case is shown in Figure 6.Figure 6
State transition graph of Example4.In conclusion, the original R-TNCESs are not sufficient to model a REMS. The reason can be explained from the following three aspects.(i)
Reconfigurations at the component level only change component behavior modes between their working modes and energy-efficient modes rather than changing system configurations. If this kind of reconfigurations is modeled by reconfiguration functions directly, the number of system configurations should be enlarged, which increases the verification cost and burdens the whole design process.(ii)
The concurrence of reconfiguration functions and transitions is not allowed in R-TNCESs. However, from the above examples, the concurrence of reconfiguration events and normal events is a common phenomenon in a REMS.(iii)
Since the local reconfigurations for energy-efficient operations cannot be properly described, their corresponding dynamics and reasonable analysis cannot be performed.To this end, this paper extends R-TNCESs to achieve two aims. First, all possible events including concurrent events that may occur in REMSs can be properly described. Second, the concurrence of reconfiguration functions and transitions should be controlled to ensure the system correctness.


## 3.3. Extended R-TNCESs

An extended R-TNCES has the same structure as the original R-TNCES. It is composed of a behavior module and a control module, denoted byeRN={B,R}. The definition of system states is not changed, as shown in Definition 2 in Section 3.1. However, in the extended R-TNCES, reconfiguration functions are newly assigned with action ranges and concurrent decision functions. In addition, the firing rules of transitions and reconfiguration functions are updated such that they are conditionally allowed to fire concurrently.


### 3.3.1. Modified Reconfiguration Functions

In order to model the two types of reconfiguration events in a REMS directly, a concept, namely,action range, is developed for each reconfiguration function of a R-TNCES. In addition, aconcurrent decision function is also assigned to a reconfiguration function to constrain concurrent transitions that may lead to undesired states such as deadlocks and overflow during a reconfiguration. For the sake of brevity, a reconfiguration function indicates a modified reconfiguration function in what follows.Definition 5.
A reconfiguration functionr of an extended R-TNCES eRN is a structure r=(Cond,s,x,Λ,Π). Cond→{true,false} is the precondition of r. s: Ω→Ω is the structure modification instruction. x:R(NΓi,z0i)→Z0j is the state correlation function, where Z0j is a set of feasible initial states of Γj. ⋆r=Γi=(NΓi,z0i) (resp., r⋆=Γj=(NΓj,z0j)) denotes the TNCES before (resp., after) r fires. Λ∈(NΓi∪NΓj) denotes the action range of r. Π(r,Z)→T is a concurrent decision function deciding a set of forbidden transitions that cannot fire together with r at state Z.The reconfiguration functions of extended R-TNCESs are divided into two types: major and minor reconfiguration functions. For a reconfiguration functionr=(Cond,s,x,Λ,Π) with ⋆r=Γi=(NΓi,z0i) and r⋆=Γj=(NΓj,z0j), it is a major reconfiguration function if and only if NΓi≠NΓj. Otherwise, it is a minor reconfiguration function. Let Rma and Rmi denote the sets of major and minor reconfiguration functions of eRN, respectively. Then we have R=Rma∪Rmi and Rma∩Rmi=∅.The implementation (firing) of a major reconfiguration function changes the structure of the current activated TNCES, whereas the implementation (firing) of a minor reconfiguration function only adjusts partial states of the activated TNCES within its action range.Similar to Petri nets, the “conflict” concept is proposed for two enabled reconfiguration functions. We have the following two cases.(1)
For two reconfiguration functions within the same type, that is, both being minor or major reconfiguration functions, if their action ranges have intersections, they are conflicting.(2)
For a minor reconfiguration function and a major reconfiguration function, if the action range of the minor reconfiguration function is not completely covered by that of the major reconfiguration function, they are conflicting.If two reconfiguration functions are conflicting, they cannot be implemented simultaneously. The symbol r1∥r2 denotes that reconfiguration functions r1 and r2 are not conflicting.Similar to the definition ofsteps in TNCES, a r-step in an extended R-TNCES is a maximal set of reconfiguration functions that can fire simultaneously at a particular state. A r-step should satisfy the following two conditions.(1)
For any two reconfiguration functionsri and rj (ri≠rj) in a r-step γ, ri and rj are not conflicting; that is, ri∥rj.(2)
There does not exist any other maximal set of reconfiguration functionsγ′ such that γ⊂γ′.Accordingly, two r-steps γ1 and γ2 are conflicting, if ∃r1∈γ1, ∃r2∈γ2, r1≠r2, r1 and r2 are conflicting.


### 3.3.2. Dynamics of Extended R-TNCESs

Suppose that, at stateZ=NΓ,z, multiple reconfiguration functions get enabled, to be denoted by(4)R∗=γ1∪γ2∪⋯∪γg,where γi (i∈[1,g]) is a maximal r-step at Z and, for all i, j∈[1,g], i≠j, γi and γj are conflicting. At the same state Z, the set of all enabled transitions is denoted by(5)T∗=u1∪u2∪⋯∪uk,where ui (i∈[1,k]) is a maximal step and, for all i, j∈[1,k], i≠j, ui and uj are conflicting. For more information on how these steps are computed, please see [34, 35].As a consequence, different compositions ofr-steps and steps can occur simultaneously at this state. Given an enabled reconfiguration function r, we use D·T (resp., D·P) to denote the set of deleted transitions (resp., deleted places) and A·T (resp., A·P) to denote the set of added transitions (resp., added places) by firing it, where ⋆r=Γi=(NΓi,z0i), r⋆=Γj=(NΓj,z0j), NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi), and NΓj=(Pj,Tj,Fj,CNj,ENj,emj,DCj). We have the following two cases.(1) For a transitiont∈Ti, if it is enabled simultaneously with a minor reconfiguration function r=(Cond,s,x,Λ,Π) at state Z=NΓ,z and t∉Λ, then t can fire simultaneously with r; that is, t∉Π(r,Z).(2) For a transitiont∈Ti, if it is enabled simultaneously with a major reconfiguration function r=(Cond,s,x,Λ,Π) at state Z=NΓ,z, then we have the following two subcases.(A)
A spontaneous transitiont is forbidden to be concurrent with r at Z, if it meets one of the following conditions.
(i)
If it is deleted byr, that is, t∈D·T, it is forbidden by r; that is, t∈Π(r,Z).(ii)
Ift∉D·T and all its elements are not changed by firing r, then it is allowed to fire simultaneously with r. Formally, if t•i=t•j, ti•=tj•, t-i=t-j, t~i=t~j=∅, and emti=emtj, we have t∉Π(r,Z).(iii)
Ift∉D·T, some of its elements are modified by r, which include its preset, postset, source places, and firing mode, and we have the following two cases.
(a)
The preset, source places, and firing mode oft decide whether t is enabled after the firing of r. Therefore, if its preset, source places, or firing mode is changed by r, it can fire simultaneously with r. Formally, if •ti≠t•j, t-i≠t-j, or emti≠emtj, then t∉Π(r,Z).(b)
The postset oft does not change its enabling condition but influences the structure of the net. Therefore, it is forbidden by r. Formally, if t•i≠t•j, we have t∈Π(r,Z).(B)
A forced transitiont is forbidden to be concurrent with r at Z, if it further meets one of the following conditions.
(i)
Its firing mode is⟏ and all of its forcing transitions are forbidden to be concurrent with r; that is, if emi(t)=emj(t)=⟏ and, for all t′∈t~, t′∉Π(r,Z), then t∈Π(r,Z).(ii)
Its firing mode is⟎ and at least one of its forcing transitions is forbidden by r; that is, if emi(t)=emj(t)=⟎ and ∃t′∈t~, t′∉Π(r,Z), then t∈Π(r,Z).Since an extended R-TNCES allows the concurrence of multiple reconfiguration functions and transitions, the reachability graph of an extended R-TNCES is defined as follows.Definition 6.
The reachability graph of an extended R-TNCESeRN is a combination of several labeled directed graphs whose nodes are the states of eRN and whose arcs are of three kinds: steps, r-steps, and combinations of a step and a r-step.(i)
The arc from stateNΓi,zi to state NΓi,z′i is denoted by a step u represented by NΓi,zi[u〉NΓi,z′i, where z′i∈R(NΓi,zi).(ii)
The arc from stateNΓi,zi to state NΓj,zj is labeled with a r-step γ represented by NΓi,zi[γ〉NΓj,zj, if γ contains major reconfiguration functions with NΓi≠NΓj. Otherwise, we have NΓi=NΓj and zj∉R(NΓi,zi).(iii)
The arc fromNΓi,zi to state NΓj,zj is labeled with a step and a r-step {R,u} represented by NΓi,zi[γ,u〉NΓj,zj, if γ contains major reconfiguration functions with NΓi≠NΓj. Otherwise, we have NΓi=NΓj.Obviously, the graphical representation of an extended R-TNCES model is the same as that of a R-TNCES model. However, system dynamics get enriched along with the changes of reconfiguration functions. If we use an extended R-TNCES to model AAS, the graphical TNCES models shown in Figures3 and 4 are still correct. However, their reachability graphs get enriched during same reconfiguration.Example 7.
A fragment of the reachability graph of the extended R-TNCES-based model of the example composed ofRb3, Rb4, and W2 is shown in Figure 7. AAS starts running in Mode1. When it arrives at state S3, two minor reconfiguration functions r3,s and r4,s get enabled and fire simultaneously to reconfigure robots Rb3 and Rb4 into their energy-efficient modes. After 28 time units, they reconfigure back to working modes. Assume that R4 is detected to have a fault at state S10, the major reconfiguration function r1,4 gets enabled. In the meantime, t3 gets enabled simultaneously with r1,4. Therefore, t3 fires simultaneously with r1,4, which leads to the transformation of AAS into Mode4.Figure 7
A fragment of the reachability graph of Example7.


## 3.3.1. Modified Reconfiguration Functions

In order to model the two types of reconfiguration events in a REMS directly, a concept, namely,action range, is developed for each reconfiguration function of a R-TNCES. In addition, aconcurrent decision function is also assigned to a reconfiguration function to constrain concurrent transitions that may lead to undesired states such as deadlocks and overflow during a reconfiguration. For the sake of brevity, a reconfiguration function indicates a modified reconfiguration function in what follows.Definition 5.
A reconfiguration functionr of an extended R-TNCES eRN is a structure r=(Cond,s,x,Λ,Π). Cond→{true,false} is the precondition of r. s: Ω→Ω is the structure modification instruction. x:R(NΓi,z0i)→Z0j is the state correlation function, where Z0j is a set of feasible initial states of Γj. ⋆r=Γi=(NΓi,z0i) (resp., r⋆=Γj=(NΓj,z0j)) denotes the TNCES before (resp., after) r fires. Λ∈(NΓi∪NΓj) denotes the action range of r. Π(r,Z)→T is a concurrent decision function deciding a set of forbidden transitions that cannot fire together with r at state Z.The reconfiguration functions of extended R-TNCESs are divided into two types: major and minor reconfiguration functions. For a reconfiguration functionr=(Cond,s,x,Λ,Π) with ⋆r=Γi=(NΓi,z0i) and r⋆=Γj=(NΓj,z0j), it is a major reconfiguration function if and only if NΓi≠NΓj. Otherwise, it is a minor reconfiguration function. Let Rma and Rmi denote the sets of major and minor reconfiguration functions of eRN, respectively. Then we have R=Rma∪Rmi and Rma∩Rmi=∅.The implementation (firing) of a major reconfiguration function changes the structure of the current activated TNCES, whereas the implementation (firing) of a minor reconfiguration function only adjusts partial states of the activated TNCES within its action range.Similar to Petri nets, the “conflict” concept is proposed for two enabled reconfiguration functions. We have the following two cases.(1)
For two reconfiguration functions within the same type, that is, both being minor or major reconfiguration functions, if their action ranges have intersections, they are conflicting.(2)
For a minor reconfiguration function and a major reconfiguration function, if the action range of the minor reconfiguration function is not completely covered by that of the major reconfiguration function, they are conflicting.If two reconfiguration functions are conflicting, they cannot be implemented simultaneously. The symbol r1∥r2 denotes that reconfiguration functions r1 and r2 are not conflicting.Similar to the definition ofsteps in TNCES, a r-step in an extended R-TNCES is a maximal set of reconfiguration functions that can fire simultaneously at a particular state. A r-step should satisfy the following two conditions.(1)
For any two reconfiguration functionsri and rj (ri≠rj) in a r-step γ, ri and rj are not conflicting; that is, ri∥rj.(2)
There does not exist any other maximal set of reconfiguration functionsγ′ such that γ⊂γ′.Accordingly, two r-steps γ1 and γ2 are conflicting, if ∃r1∈γ1, ∃r2∈γ2, r1≠r2, r1 and r2 are conflicting.


## 3.3.2. Dynamics of Extended R-TNCESs

Suppose that, at stateZ=NΓ,z, multiple reconfiguration functions get enabled, to be denoted by(4)R∗=γ1∪γ2∪⋯∪γg,where γi (i∈[1,g]) is a maximal r-step at Z and, for all i, j∈[1,g], i≠j, γi and γj are conflicting. At the same state Z, the set of all enabled transitions is denoted by(5)T∗=u1∪u2∪⋯∪uk,where ui (i∈[1,k]) is a maximal step and, for all i, j∈[1,k], i≠j, ui and uj are conflicting. For more information on how these steps are computed, please see [34, 35].As a consequence, different compositions ofr-steps and steps can occur simultaneously at this state. Given an enabled reconfiguration function r, we use D·T (resp., D·P) to denote the set of deleted transitions (resp., deleted places) and A·T (resp., A·P) to denote the set of added transitions (resp., added places) by firing it, where ⋆r=Γi=(NΓi,z0i), r⋆=Γj=(NΓj,z0j), NΓi=(Pi,Ti,Fi,CNi,ENi,emi,DCi), and NΓj=(Pj,Tj,Fj,CNj,ENj,emj,DCj). We have the following two cases.(1) For a transitiont∈Ti, if it is enabled simultaneously with a minor reconfiguration function r=(Cond,s,x,Λ,Π) at state Z=NΓ,z and t∉Λ, then t can fire simultaneously with r; that is, t∉Π(r,Z).(2) For a transitiont∈Ti, if it is enabled simultaneously with a major reconfiguration function r=(Cond,s,x,Λ,Π) at state Z=NΓ,z, then we have the following two subcases.(A)
A spontaneous transitiont is forbidden to be concurrent with r at Z, if it meets one of the following conditions.
(i)
If it is deleted byr, that is, t∈D·T, it is forbidden by r; that is, t∈Π(r,Z).(ii)
Ift∉D·T and all its elements are not changed by firing r, then it is allowed to fire simultaneously with r. Formally, if t•i=t•j, ti•=tj•, t-i=t-j, t~i=t~j=∅, and emti=emtj, we have t∉Π(r,Z).(iii)
Ift∉D·T, some of its elements are modified by r, which include its preset, postset, source places, and firing mode, and we have the following two cases.
(a)
The preset, source places, and firing mode oft decide whether t is enabled after the firing of r. Therefore, if its preset, source places, or firing mode is changed by r, it can fire simultaneously with r. Formally, if •ti≠t•j, t-i≠t-j, or emti≠emtj, then t∉Π(r,Z).(b)
The postset oft does not change its enabling condition but influences the structure of the net. Therefore, it is forbidden by r. Formally, if t•i≠t•j, we have t∈Π(r,Z).(B)
A forced transitiont is forbidden to be concurrent with r at Z, if it further meets one of the following conditions.
(i)
Its firing mode is⟏ and all of its forcing transitions are forbidden to be concurrent with r; that is, if emi(t)=emj(t)=⟏ and, for all t′∈t~, t′∉Π(r,Z), then t∈Π(r,Z).(ii)
Its firing mode is⟎ and at least one of its forcing transitions is forbidden by r; that is, if emi(t)=emj(t)=⟎ and ∃t′∈t~, t′∉Π(r,Z), then t∈Π(r,Z).Since an extended R-TNCES allows the concurrence of multiple reconfiguration functions and transitions, the reachability graph of an extended R-TNCES is defined as follows.Definition 6.
The reachability graph of an extended R-TNCESeRN is a combination of several labeled directed graphs whose nodes are the states of eRN and whose arcs are of three kinds: steps, r-steps, and combinations of a step and a r-step.(i)
The arc from stateNΓi,zi to state NΓi,z′i is denoted by a step u represented by NΓi,zi[u〉NΓi,z′i, where z′i∈R(NΓi,zi).(ii)
The arc from stateNΓi,zi to state NΓj,zj is labeled with a r-step γ represented by NΓi,zi[γ〉NΓj,zj, if γ contains major reconfiguration functions with NΓi≠NΓj. Otherwise, we have NΓi=NΓj and zj∉R(NΓi,zi).(iii)
The arc fromNΓi,zi to state NΓj,zj is labeled with a step and a r-step {R,u} represented by NΓi,zi[γ,u〉NΓj,zj, if γ contains major reconfiguration functions with NΓi≠NΓj. Otherwise, we have NΓi=NΓj.Obviously, the graphical representation of an extended R-TNCES model is the same as that of a R-TNCES model. However, system dynamics get enriched along with the changes of reconfiguration functions. If we use an extended R-TNCES to model AAS, the graphical TNCES models shown in Figures3 and 4 are still correct. However, their reachability graphs get enriched during same reconfiguration.Example 7.
A fragment of the reachability graph of the extended R-TNCES-based model of the example composed ofRb3, Rb4, and W2 is shown in Figure 7. AAS starts running in Mode1. When it arrives at state S3, two minor reconfiguration functions r3,s and r4,s get enabled and fire simultaneously to reconfigure robots Rb3 and Rb4 into their energy-efficient modes. After 28 time units, they reconfigure back to working modes. Assume that R4 is detected to have a fault at state S10, the major reconfiguration function r1,4 gets enabled. In the meantime, t3 gets enabled simultaneously with r1,4. Therefore, t3 fires simultaneously with r1,4, which leads to the transformation of AAS into Mode4.Figure 7
A fragment of the reachability graph of Example7.


## 4. Verification of REMSs Based on Extended R-TNCESs

In order to perform correct formal verification of AAS, an extended R-TNCES-based model should be built for it. The extended R-TNCES based model of AAS is marked byeRNAAS={B,R}, B=Γ1∪Γ2∪Γ3∪Γ4, R=Rma∪Rmi,Rma={r1,2, r1,3, r1,4, r2,4, r3,4}, and Rmi = {r1,s, r2,s, r3,s, r4,s, r1,s-1, r2,s-1, r3,s-1, r4,s-1}. We have Ω = {NΓ1, NΓ2, NΓ3, NΓ4}. The four major reconfiguration functions are conflicting with each other. The minor reconfiguration functions ri,s and ri,s-1 (i∈[1,4]) are conflicting but others are not. The behavior module of eRNAAS is shown in Figure 8, where elements drawn by dotted lines are possibly modified during the implementation of a major reconfiguration function. In order to apply automatic model checking to an extended R-TNCES, a TNCES-based nested state machine is developed to implement its control module.Figure 8
Behavior module ofeRNAAS.


### 4.1. Implementation of Extended R-TNCESs

First of all, major reconfiguration functions are grouped according to their action ranges. A set of state machines specified by TNCESs, which are calledMajor_changers, is defined. Each state machine corresponds to a group of major reconfiguration functions that share the same action range. In a particular Major_changer, each transition corresponds to a major reconfiguration function. The transitions in a state machine cannot fire simultaneously, which means that these modeled major reconfiguration functions by one state machine are conflicting with each other. Firing a transition st in a Major_changer implies that a major reconfiguration function is implemented. A Major_changer is formalized as follows: (6)Major_changer=P,T,F,em,z0,where, for any t∈T, |•t|=|t•|=1, ∑‍M0(P)=1, which means that only one place in P owns a token at the initial state, and em:T→{⟏}. The precondition Cond can be modeled by input event/condition signals from external to transitions in a Major_changer.In addition, an actuator denoted byActuator is defined for each place sp in all Major_changers, which is marked by Actuator=Act(sp). Each actuator is composed of a place ap and a transition at only, where •ap=ap•={at}, •at=at•={ap}, and M(ap)=1. When the place sp in a Major_changer receives a token, the actuator Actuator=Act(sp) is activated. An Actuator is formalized as follows: (7)Actuator=P,T,F,em,z0,where |P|=|T|=1, •at=at•={ap}, •ap=ap•={at}, m0(P)=1, and em:T→{⟏}.Similar to major reconfiguration functions, minor reconfiguration functions are grouped according to their action ranges. A set of state machines specified by TNCESs, which are calledMinor_changers, is defined. Each state machine corresponds to a group of minor reconfiguration functions. If the action ranges of two minor reconfiguration functions are the same, they are modeled by transitions in a Minor_changer. If the action range of a group of minor reconfiguration functions, to be modelled by a Minor_changer, is completely covered by that of a group of major reconfiguration functions, to be modeled by a Major_changer, then this Minor_changer is activated while this Major_changer is activated.AMinor_changer is formalized as follows:(8)Minor_changer=P,T,F,em,z0,where, for any t∈T, |•t|=|t•|=1, ∑‍M0(P)=1, which means that only one place in P owns a token at the initial state, and em:T→{⟏}. The precondition Cond can be modeled by input event/condition signals from external to transitions in a Minor_changer.Example 8.
Figure9 depicts the TNCES-based control module of eRNAAS. It has only one Major_changer, since the four major reconfiguration functions share the same action range. It has four Minor_changers, since the four robots have four distinguished action ranges. Places p1, p2, p3, and p4 in Major_changer correspond to Mode 1, Mode 2, Mode 3, and Mode 4, respectively. When t3 fires, the major reconfiguration function r1,4 is implemented. Robots Rb3 and Rb1 are applied in every mode of AAS. Therefore, minor reconfiguration functions that transform them between energy-efficient modes and working modes are activated in every system behavior mode. Moreover, it is possible for them to fire simultaneously with other major reconfiguration functions.Figure 9
Control module ofeRNAAS.


### 4.2. Formal Verification of AAS

Since the time when a major reconfiguration function can get enabled and fire cannot be predicted, this paper applies an instruction insertion method to simulate AAS. In addition,eRNAAS evolves according to fired maximal steps and r-steps. Assume that AAS should finish 100 subassemblies. It starts with Mode 1. At time t1 when it finishes the 60th subassembly, it reconfigures into Mode 2 due to the fault detection of Rb2. Then, it goes on working in Mode 2. At time t2 when the 91st subassembly is being processed, it transforms into Mode 4 according to the fault detection of Rb4. During the whole process, minor reconfigurations, that is, transforming robots between their working modes and energy-efficient modes, are applied.SESA is applied to compute the reachability graph of this whole process. A minimal path regarding time consumption from the initial state to the objective state is computed in each mode. In Mode 1, it generates 23044 states, taking 6990 time units to finish assembly of the first 60 subassemblies in the minimal path. In Mode 2, it generates 85259 states, costing 4127 time units to finish assembling the next 30 subassemblies in the minimal path. Finally, in Mode 4, it generates 195007 states, taking 1525 time units to finish assembling the last 10 subassemblies in the minimal path. Note that two states can be considered to be same if and only if they have the same token numbers and time status.Since each TNCES-based model of the behavior modes of AAS is a well-designed control system, they are proved to be qualified according to SESA, where eCTL based functional properties and TCTL based temporal properties are checked. In addition, the following eCTL formula is applied to the control module ofeRNAAS: (9)Z0=EXt4ANDt12Xp12=1.This formula is proved to be false by SESA. Transition t12 corresponds to minor reconfiguration function r2,s. Therefore, it can fire only when AAS is in Mode 1 or Mode 2. The following formula is proved to be true: (10)Z0=EXt2ANDt10Xp10=1.It means that when robot Rb4 breaks down, two reconfiguration functions r1,3 and r1,s are possible to fire simultaneously.The triggering conditions of minor reconfiguration functions can be computed previously. There are several possible state/event paths showing system behavior from the initial state to the objective state, at which 100 subassemblies are finished. We select a minimal path regarding time for each TNCES-based model of the three configurations, to be denoted byPath=Z1,Z2,…,Zn, where energy-efficient operations are not included. That is to say, all robots should stay in their working modes in this case although they should wait for a period of time before the next task comes. After that, based on the states on this path, the time when a minor reconfiguration function gets enabled and fires can be computed. For example, if an activated robot starts to wait at a particular state Zi, at which the system time is τ1, a search is performed along this minimal path at τ1. If it is found that at Zj the robot works again, at which the system time is τ2, then the time delay Δτ=τ2-τ1 between these two states is obtained. The round local reconfigurations for switching a robot between its working mode and energy-efficient mode take two time units. Therefore, if the time delay is larger than two, that is, Δτ>2, a local reconfiguration can be applied to this robot. The system time for reconfiguring this robot from its working mode to its energy-efficient mode is τ1. The system time for reconfiguring this robot from its energy-efficient mode to its working mode is τ2-1.The time of robots on their energy-efficient modes in minimal paths is computed during the assembly of 100 subassemblies. They are shown in Table1 together with the whole system uptime in each mode. Take Mode 1 as an example. Assume that Rb1 consumes one energy unit per time unit in its working time but only consumes 30% energy unit per time unit in its energy-efficient mode. In Mode1, if there is no minor reconfiguration applied to Rb1 for saving energy, it will consume 6990 energy units. However, it only consumes 6990-3233+30%×3233=4726.9 energy units in Mode 1 if minor reconfigurations are applied when it is idle. In the same way, the energy saved by the robots during this simulation is shown in Table 2, where the third row shows the energy consumption of each robot if no minor reconfigurations are applied, the fourth row shows the energy consumption of each robot when minor reconfigurations are applied, and the last row shows the saved energy of each robot during this process.Table 1
Time of robots on their energy-efficient modes.
Configuration
Mode 1
Mode 2
Mode 4
System uptime
6690
4127
1525
Robot
Rb1
Rb2
Rb3
Rb4
Rb1
Rb3
Rb4
Rb1
Rb3
Time on energy-efficient mode
3233
4455
3818
2643
1004
2458
2428
523
435Table 2
Energy consumption of robots.
Configuration
Mode 1
Mode 2
Mode 4
Robot
Rb1
Rb2
Rb3
Rb4
Rb1
Rb3
Rb4
Rb1
Rb3
Energy 1
6690
6690
6690
6690
4127
4127
4127
1525
1525
Energy 2
4726.9
3871.5
4303.4
5139.9
3424.2
2406.4
2427.4
1158.9
1220.5
Saved energy
1963.1
2818.5
2386.6
1550.1
702.8
1720.6
1699.6
366.1
304.5


## 4.1. Implementation of Extended R-TNCESs

First of all, major reconfiguration functions are grouped according to their action ranges. A set of state machines specified by TNCESs, which are calledMajor_changers, is defined. Each state machine corresponds to a group of major reconfiguration functions that share the same action range. In a particular Major_changer, each transition corresponds to a major reconfiguration function. The transitions in a state machine cannot fire simultaneously, which means that these modeled major reconfiguration functions by one state machine are conflicting with each other. Firing a transition st in a Major_changer implies that a major reconfiguration function is implemented. A Major_changer is formalized as follows: (6)Major_changer=P,T,F,em,z0,where, for any t∈T, |•t|=|t•|=1, ∑‍M0(P)=1, which means that only one place in P owns a token at the initial state, and em:T→{⟏}. The precondition Cond can be modeled by input event/condition signals from external to transitions in a Major_changer.In addition, an actuator denoted byActuator is defined for each place sp in all Major_changers, which is marked by Actuator=Act(sp). Each actuator is composed of a place ap and a transition at only, where •ap=ap•={at}, •at=at•={ap}, and M(ap)=1. When the place sp in a Major_changer receives a token, the actuator Actuator=Act(sp) is activated. An Actuator is formalized as follows: (7)Actuator=P,T,F,em,z0,where |P|=|T|=1, •at=at•={ap}, •ap=ap•={at}, m0(P)=1, and em:T→{⟏}.Similar to major reconfiguration functions, minor reconfiguration functions are grouped according to their action ranges. A set of state machines specified by TNCESs, which are calledMinor_changers, is defined. Each state machine corresponds to a group of minor reconfiguration functions. If the action ranges of two minor reconfiguration functions are the same, they are modeled by transitions in a Minor_changer. If the action range of a group of minor reconfiguration functions, to be modelled by a Minor_changer, is completely covered by that of a group of major reconfiguration functions, to be modeled by a Major_changer, then this Minor_changer is activated while this Major_changer is activated.AMinor_changer is formalized as follows:(8)Minor_changer=P,T,F,em,z0,where, for any t∈T, |•t|=|t•|=1, ∑‍M0(P)=1, which means that only one place in P owns a token at the initial state, and em:T→{⟏}. The precondition Cond can be modeled by input event/condition signals from external to transitions in a Minor_changer.Example 8.
Figure9 depicts the TNCES-based control module of eRNAAS. It has only one Major_changer, since the four major reconfiguration functions share the same action range. It has four Minor_changers, since the four robots have four distinguished action ranges. Places p1, p2, p3, and p4 in Major_changer correspond to Mode 1, Mode 2, Mode 3, and Mode 4, respectively. When t3 fires, the major reconfiguration function r1,4 is implemented. Robots Rb3 and Rb1 are applied in every mode of AAS. Therefore, minor reconfiguration functions that transform them between energy-efficient modes and working modes are activated in every system behavior mode. Moreover, it is possible for them to fire simultaneously with other major reconfiguration functions.Figure 9
Control module ofeRNAAS.


## 4.2. Formal Verification of AAS

Since the time when a major reconfiguration function can get enabled and fire cannot be predicted, this paper applies an instruction insertion method to simulate AAS. In addition,eRNAAS evolves according to fired maximal steps and r-steps. Assume that AAS should finish 100 subassemblies. It starts with Mode 1. At time t1 when it finishes the 60th subassembly, it reconfigures into Mode 2 due to the fault detection of Rb2. Then, it goes on working in Mode 2. At time t2 when the 91st subassembly is being processed, it transforms into Mode 4 according to the fault detection of Rb4. During the whole process, minor reconfigurations, that is, transforming robots between their working modes and energy-efficient modes, are applied.SESA is applied to compute the reachability graph of this whole process. A minimal path regarding time consumption from the initial state to the objective state is computed in each mode. In Mode 1, it generates 23044 states, taking 6990 time units to finish assembly of the first 60 subassemblies in the minimal path. In Mode 2, it generates 85259 states, costing 4127 time units to finish assembling the next 30 subassemblies in the minimal path. Finally, in Mode 4, it generates 195007 states, taking 1525 time units to finish assembling the last 10 subassemblies in the minimal path. Note that two states can be considered to be same if and only if they have the same token numbers and time status.Since each TNCES-based model of the behavior modes of AAS is a well-designed control system, they are proved to be qualified according to SESA, where eCTL based functional properties and TCTL based temporal properties are checked. In addition, the following eCTL formula is applied to the control module ofeRNAAS: (9)Z0=EXt4ANDt12Xp12=1.This formula is proved to be false by SESA. Transition t12 corresponds to minor reconfiguration function r2,s. Therefore, it can fire only when AAS is in Mode 1 or Mode 2. The following formula is proved to be true: (10)Z0=EXt2ANDt10Xp10=1.It means that when robot Rb4 breaks down, two reconfiguration functions r1,3 and r1,s are possible to fire simultaneously.The triggering conditions of minor reconfiguration functions can be computed previously. There are several possible state/event paths showing system behavior from the initial state to the objective state, at which 100 subassemblies are finished. We select a minimal path regarding time for each TNCES-based model of the three configurations, to be denoted byPath=Z1,Z2,…,Zn, where energy-efficient operations are not included. That is to say, all robots should stay in their working modes in this case although they should wait for a period of time before the next task comes. After that, based on the states on this path, the time when a minor reconfiguration function gets enabled and fires can be computed. For example, if an activated robot starts to wait at a particular state Zi, at which the system time is τ1, a search is performed along this minimal path at τ1. If it is found that at Zj the robot works again, at which the system time is τ2, then the time delay Δτ=τ2-τ1 between these two states is obtained. The round local reconfigurations for switching a robot between its working mode and energy-efficient mode take two time units. Therefore, if the time delay is larger than two, that is, Δτ>2, a local reconfiguration can be applied to this robot. The system time for reconfiguring this robot from its working mode to its energy-efficient mode is τ1. The system time for reconfiguring this robot from its energy-efficient mode to its working mode is τ2-1.The time of robots on their energy-efficient modes in minimal paths is computed during the assembly of 100 subassemblies. They are shown in Table1 together with the whole system uptime in each mode. Take Mode 1 as an example. Assume that Rb1 consumes one energy unit per time unit in its working time but only consumes 30% energy unit per time unit in its energy-efficient mode. In Mode1, if there is no minor reconfiguration applied to Rb1 for saving energy, it will consume 6990 energy units. However, it only consumes 6990-3233+30%×3233=4726.9 energy units in Mode 1 if minor reconfigurations are applied when it is idle. In the same way, the energy saved by the robots during this simulation is shown in Table 2, where the third row shows the energy consumption of each robot if no minor reconfigurations are applied, the fourth row shows the energy consumption of each robot when minor reconfigurations are applied, and the last row shows the saved energy of each robot during this process.Table 1
Time of robots on their energy-efficient modes.
Configuration
Mode 1
Mode 2
Mode 4
System uptime
6690
4127
1525
Robot
Rb1
Rb2
Rb3
Rb4
Rb1
Rb3
Rb4
Rb1
Rb3
Time on energy-efficient mode
3233
4455
3818
2643
1004
2458
2428
523
435Table 2
Energy consumption of robots.
Configuration
Mode 1
Mode 2
Mode 4
Robot
Rb1
Rb2
Rb3
Rb4
Rb1
Rb3
Rb4
Rb1
Rb3
Energy 1
6690
6690
6690
6690
4127
4127
4127
1525
1525
Energy 2
4726.9
3871.5
4303.4
5139.9
3424.2
2406.4
2427.4
1158.9
1220.5
Saved energy
1963.1
2818.5
2386.6
1550.1
702.8
1720.6
1699.6
366.1
304.5


## 5. Conclusion

A reconfigurable and energy-efficient manufacturing system (REMS) is a typical reconfigurable discrete event control system. It allows two kinds of dynamic system reconfigurations: local and global reconfigurations. The former ones are applied to save energy for components, whereas the latter ones are applied to change system configurations according to changed inner/outer execution environments. Meanwhile, normal events should be conditionally allowed to occur simultaneously with these system reconfigurations, such that the system can reconfigure smoothly and safely. In order to easily model conditioned concurrence of reconfiguration events and normal events and represent all interesting system behavior, this paper extends the reconfigurable timed net condition event systems (R-TNCESs) formalism. Original reconfiguration functions are newly assigned with action ranges and concurrent decision functions. Accordingly, the dynamics of R-TNCES is updated. After that, a TNCES-based implementation method for the proposed extended R-TNCES is developed such that automatic model checking can be applied. The verified properties include functional, temporal, and energy properties that are specified by Computation Tree Logic (CTL), extended Computation Tree Logic (eCTL), or Timed Computation Tree Logic (TCTL). An automatic assembly system is used to illustrate the whole work.In the future, the authors will focus on reasonably optimal reconfigurable control systems that can save more energy and the applications of the proposed method to the crude-oil operation enterprises with huge energy consumption [48].



---

*Source: 813476-2015-06-02.xml*