# Development of a Novel Open Control System Implementation Method under Industrial IoT
## 2 Related Work  
### Formal Description of Control Domain  
The IEC 61499 standard defines a domain-specific modeling language to construct control systems [8]. Its meta-model is called the function block (FB). As the left side of Figure 2 shows, the FB has separate event and data interfaces. 1 When an event input arrives, 2 its related data interfaces will be refreshed to obtain data inputs. Then, 3 the event execution control part (top of the FB) executes the input-event-relate algorithms (4 bottom of the FB) and 3 generates data outputs and the event output. 4 Data outputs refresh the output-event-relate data interfaces, and then, 5 the event output is sent. The event execution control part, essentially, is a finite state machine (FSM), as the right side of Figure 2 presents. For instance, the INIT event transits the FB's state from START to INIT. In the state of INIT, the INIT algorithm is executed, and INITO is set as the event output. A control application is made up of multiple FBs via connecting event and data interfaces, which is also called an FB Network (FBN). In addition to the FB and FBN, IEC 61499 also defines the concepts of Resource, Device, and others. Since this paper concentrates on the formal description of the control domain, these concepts are not introduced.  
It can be seen that the semantic model of IEC 61499 is the FSM, which is a popular model to describe the discrete event system (DES). It conforms to the original intention of IEC 61499, that is an extension of IEC 61131-3 with respect to a vendor-neutral format,  
Figure 2: Function block of IEC 61499.  
reusability, and controller-to-controller communication [8]. The latter is the international standard for programmable logic controllers (PLCs), which is a typical implementation of the DES. Modern control systems, however, are often a kind of hybrid system that has not only discrete behaviors, but also continuous behaviors. For instance, the CNC is a typical hybrid control system. Its discrete behaviors include I/O behaviors (e.g., spindle rotation, coolant on/off, tool change, etc.), response behaviors to stimuli, and others. Its continuous behaviors mainly include the trajectory control of feed axes in light of a part program. Even though FBs and FBNs are used to develop open control prototypes in some studies [9; 10], the FSM is not a proper semantic model to describe the continuous control domain. In other words, despite that the state machine can be the micromodel of software applications, it focuses on the execution of software applications, that is the implementation of software applications rather than the description of the control domain's knowledge.  
In addition, the semantics of the FB and FBN are ambiguous [11], for instance the dependency and execution sequence of event inputs are not defined clearly, which leads to the control system described by IEC 61499 not being determined. Many studies have discussed the deficiencies of semantics and proposed corresponding deterministic execution mechanisms [12; 13; 14; 15; 16]. However, the execution mechanisms they proposed target particular semantic deficiencies and often rely on particular implementation languages. As a result, there are mutually exclusive IEC 61499 runtime systems that have different semantics.  
In summary, with respect to determining control tasks via the control domain's formal description, hey lack of a clear semantic model that can deal with both the discrete and continuous behaviors of control systems.