ArticlePDF Available

Finite State Machine Based Modelling of Discrete Control Algorithm in LAD Diagram Language With Use of New Generation Engineering Software

Authors:

Abstract and Figures

In the paper there is described a process of modeling the discrete control system for a chemical reactor. In the design of the control algorithm there was used Finite State Machine methodology as one of the more effective for modeling complex control tasks. There were identified input and output signals of the process, the dependencies and operating rules and the system operation was described. The modeled algorithm was implemented in LAD diagram language with use of novel control engineering software - TIA Portal by Siemens. The implementation process is described and discussed, implementation results are shown and a conclusion is drawn.
Content may be subject to copyright.
ScienceDirect
Available online at www.sciencedirect.com
Procedia Computer Science 159 (2019) 2560–2569
1877-0509 © 2019 The Authors. Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
10.1016/j.procs.2019.09.431
10.1016/j.procs.2019.09.431 1877-0509
© 2019 The Authors. Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
Available online at www.sciencedirect.com
ScienceDirect
Procedia Computer Science 00 (2019) 000000
www.elsevier.com/locate/procedia
1877-0509 © 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
23rd International Conference on Knowledge-Based and Intelligent Information & Engineering
Systems
Finite State Machine Based Modelling of Discrete Control
Algorithm in LAD Diagram Language With Use of New Generation
Engineering Software
Wojciech Zająca, Grzegorz Andrzejewskia,
Kazimierz Krzywickia, Tomasz Królikowskib,
*
aFaculty of Technology, The Jacob of Paradies University, ul. Teatralna 25, 66-400 Gorzow Wielkopolski, Poland
bFaculty of Technology and Education, University of Technology, ul. Sniadeckich 2, 75-453 Koszalin, Poland
Abstract
In the paper there is described a process of modeling the discrete control system for a chemical reactor. In the design of the
control algorithm there was used Finite State Machine methodology as one of the more effective for modeling complex control
tasks. There were identified input and output signals of the process, the dependencies and operating rules and the system
operation was described. The modeled algorithm was implemented in LAD diagram language with use of novel control
engineering software - TIA Portal by Siemens. The implementation process is described and discussed, implementation results
are shown and a conclusion is drawn.
© 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
Keywords: industrial process control; parameterised discrete control; embedded systems; process modelling; FSM; LD;
* Corresponding author. Tel.: +48 601959023; fax: +48 94 342-59-63.
E-mail address: Tomasz.krolikowski@tu.koszalin.pl
Available online at www.sciencedirect.com
ScienceDirect
Procedia Computer Science 00 (2019) 000000
www.elsevier.com/locate/procedia
1877-0509 © 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
23rd International Conference on Knowledge-Based and Intelligent Information & Engineering
Systems
Finite State Machine Based Modelling of Discrete Control
Algorithm in LAD Diagram Language With Use of New Generation
Engineering Software
Wojciech Zająca, Grzegorz Andrzejewskia,
Kazimierz Krzywickia, Tomasz Królikowskib,*
aFaculty of Technology, The Jacob of Paradies University, ul. Teatralna 25, 66-400 Gorzow Wielkopolski, Poland
bFaculty of Technology and Education, University of Technology, ul. Sniadeckich 2, 75-453 Koszalin, Poland
Abstract
In the paper there is described a process of modeling the discrete control system for a chemical reactor. In the design of the
control algorithm there was used Finite State Machine methodology as one of the more effective for modeling complex control
tasks. There were identified input and output signals of the process, the dependencies and operating rules and the system
operation was described. The modeled algorithm was implemented in LAD diagram language with use of novel control
engineering software - TIA Portal by Siemens. The implementation process is described and discussed, implementation results
are shown and a conclusion is drawn.
© 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
Keywords: industrial process control; parameterised discrete control; embedded systems; process modelling; FSM; LD;
* Corresponding author. Tel.: +48 601959023; fax: +48 94 342-59-63.
E-mail address: Tomasz.krolikowski@tu.koszalin.pl
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
1. Introduction
The dynamic development of embedded systems and automatic control of industrial processes causes that these
systems are becoming larger, more complex and complicated [1-2]. Increasingly, they consist of many (even several
dozens) executive units connected together in a logical way creating a distributed embedded system. Furthermore,
the complexity of implemented control processes and sensors and actuators used is also increasing. This is due to the
fact that more and more factories operate in accordance with the Industry 4.0 concept creating intelligent
manufacturing solutions. However, the design and implementation of such systems is complex, complicated, time-
consuming and expensive [2]. Therefore, it seems reasonable to look for methods that support the design and
implementation of such systems.
This paper proposes a modeling method of discrete control algorithm in LAD language based on FSM
description, which allows to systematize and simplify the design and implementation of industrial process control
systems. In addition, this method increases the reliability of the system by imposing certain FSM states in which it
can operate.
Section I contains the general introduction and state of art, Section II proposes FSM Model of Control Algorithm,
Section III provides the implementation and research results, Section IV concludes the paper.
1.1. Control Process Modeling
There are many methods and models that help design and implement embedded systems [15-20]. Often,
behavioral models are used to present and investigate relationships between some objects. Furthermore, due to their
properties, they are used in the Model Driven Design (MDD) methods [3-4]. Through specific model
transformations, effects are obtained, for example, in the form of generated code fragments or the entire
implementation that commonly would have to be done manually by the designer. These models have different
properties and applications. One of the most important features when designing complex industrial process control
systems is the simplicity and readability of the description model. Despite the existence of different models of
formal specifications, the most commonly used high-level synthesis models are: FSM (Finite State Machine) [5-7]
and related: FSMD (Finite State Machine with Datapath) [8], state diagrams (including UML) [9] and Petri nets
(including interpreted, hierarchical, colored, etc.) [10-12]. In [5] authors propose design methods targeted on logic
synthesis of both Mealy and Moore FSMs, where their logic circuits can be implemented using ASIC, as well as
CPLD or FPGA. A code generation tool for embedded automotive systems based on finite state machines was
described in [13]. In [14] authors propose core concepts of PLC-statecharts as an adaptation of UML-statechart
dedicated for integrative use with IEC 61131.
In this article, we focused on the FSM model, because it is one of the main and simplest methods for describing
the behavior of objects. Therefore, it is suitable for describing the control process and it is possible to carry out a
synthesis process to the LAD language.
1.2. FSM Model Description
The Finite State Machine [5-7] model is a mathematical formation allowing to model the behavior of processes
that can be described by discrete values of parameters. It describes the state of an object by specifying the values of
particular system variables at certain moments or intervals of time (states), and by defining the table of changes of
system variables in subsequent discrete states (the transition table).
A Moore FSM can be represented as a:

(1)
where:
S={s1,…,si} is non-empty and finite set of internal states;
X={x1,…,xj} is a finite and non-empty set of inputs;
Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569 2561
www.elsevier.com/locate/procedia
1877-0509 © 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
23rd International Conference on Knowledge-Based and Intelligent Information & Engineering
Systems
Finite State Machine Based Modelling of Discrete Control
Algorithm in LAD Diagram Language With Use of New Generation
Engineering Software
Wojciech Zająca, Grzegorz Andrzejewskia,
Kazimierz Krzywickia, Tomasz Królikowskib,*
aFaculty of Technology, The Jacob of Paradies University, ul. Teatralna 25, 66-400 Gorzow Wielkopolski, Poland
bFaculty of Technology and Education, University of Technology, ul. Sniadeckich 2, 75-453 Koszalin, Poland
Abstract
In the paper there is described a process of modeling the discrete control system for a chemical reactor. In the design of the
control algorithm there was used Finite State Machine methodology as one of the more effective for modeling complex control
tasks. There were identified input and output signals of the process, the dependencies and operating rules and the system
operation was described. The modeled algorithm was implemented in LAD diagram language with use of novel control
engineering software - TIA Portal by Siemens. The implementation process is described and discussed, implementation results
are shown and a conclusion is drawn.
© 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
Keywords: industrial process control; parameterised discrete control; embedded systems; process modelling; FSM; LD;
* Corresponding author. Tel.: +48 601959023; fax: +48 94 342-59-63.
E-mail address: Tomasz.krolikowski@tu.koszalin.pl
www.elsevier.com/locate/procedia
1877-0509 © 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
23rd International Conference on Knowledge-Based and Intelligent Information & Engineering
Systems
Finite State Machine Based Modelling of Discrete Control
Algorithm in LAD Diagram Language With Use of New Generation
Engineering Software
Wojciech Zająca, Grzegorz Andrzejewskia,
Kazimierz Krzywickia, Tomasz Królikowskib,*
aFaculty of Technology, The Jacob of Paradies University, ul. Teatralna 25, 66-400 Gorzow Wielkopolski, Poland
bFaculty of Technology and Education, University of Technology, ul. Sniadeckich 2, 75-453 Koszalin, Poland
Abstract
In the paper there is described a process of modeling the discrete control system for a chemical reactor. In the design of the
control algorithm there was used Finite State Machine methodology as one of the more effective for modeling complex control
tasks. There were identified input and output signals of the process, the dependencies and operating rules and the system
operation was described. The modeled algorithm was implemented in LAD diagram language with use of novel control
engineering software - TIA Portal by Siemens. The implementation process is described and discussed, implementation results
are shown and a conclusion is drawn.
© 2019 The Author(s). Published by Elsevier B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of KES International.
Keywords: industrial process control; parameterised discrete control; embedded systems; process modelling; FSM; LD;
* Corresponding author. Tel.: +48 601959023; fax: +48 94 342-59-63.
E-mail address: Tomasz.krolikowski@tu.koszalin.pl
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
1. Introduction
The dynamic development of embedded systems and automatic control of industrial processes causes that these
systems are becoming larger, more complex and complicated [1-2]. Increasingly, they consist of many (even several
dozens) executive units connected together in a logical way creating a distributed embedded system. Furthermore,
the complexity of implemented control processes and sensors and actuators used is also increasing. This is due to the
fact that more and more factories operate in accordance with the Industry 4.0 concept creating intelligent
manufacturing solutions. However, the design and implementation of such systems is complex, complicated, time-
consuming and expensive [2]. Therefore, it seems reasonable to look for methods that support the design and
implementation of such systems.
This paper proposes a modeling method of discrete control algorithm in LAD language based on FSM
description, which allows to systematize and simplify the design and implementation of industrial process control
systems. In addition, this method increases the reliability of the system by imposing certain FSM states in which it
can operate.
Section I contains the general introduction and state of art, Section II proposes FSM Model of Control Algorithm,
Section III provides the implementation and research results, Section IV concludes the paper.
1.1. Control Process Modeling
There are many methods and models that help design and implement embedded systems [15-20]. Often,
behavioral models are used to present and investigate relationships between some objects. Furthermore, due to their
properties, they are used in the Model Driven Design (MDD) methods [3-4]. Through specific model
transformations, effects are obtained, for example, in the form of generated code fragments or the entire
implementation that commonly would have to be done manually by the designer. These models have different
properties and applications. One of the most important features when designing complex industrial process control
systems is the simplicity and readability of the description model. Despite the existence of different models of
formal specifications, the most commonly used high-level synthesis models are: FSM (Finite State Machine) [5-7]
and related: FSMD (Finite State Machine with Datapath) [8], state diagrams (including UML) [9] and Petri nets
(including interpreted, hierarchical, colored, etc.) [10-12]. In [5] authors propose design methods targeted on logic
synthesis of both Mealy and Moore FSMs, where their logic circuits can be implemented using ASIC, as well as
CPLD or FPGA. A code generation tool for embedded automotive systems based on finite state machines was
described in [13]. In [14] authors propose core concepts of PLC-statecharts as an adaptation of UML-statechart
dedicated for integrative use with IEC 61131.
In this article, we focused on the FSM model, because it is one of the main and simplest methods for describing
the behavior of objects. Therefore, it is suitable for describing the control process and it is possible to carry out a
synthesis process to the LAD language.
1.2. FSM Model Description
The Finite State Machine [5-7] model is a mathematical formation allowing to model the behavior of processes
that can be described by discrete values of parameters. It describes the state of an object by specifying the values of
particular system variables at certain moments or intervals of time (states), and by defining the table of changes of
system variables in subsequent discrete states (the transition table).
A Moore FSM can be represented as a:
      (1)
where:
S={s1,…,si} is non-empty and finite set of internal states;
X={x1,…,xj} is a finite and non-empty set of inputs;
2562 Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Y={y1,…,yk} is a finite set of outputs;
is the function of transition:
: ×
;
is the function of outputs: : ;
, is the initial state of the automata.
1.3. FSM-based Modeling of control processes
All tables should There are many ways for representing a Moore FSM [5]. In this paper, we use classic, graph
representation of the FSM. Identifying and describing the components of equation (1) is necessary for modelling the
Finite Automaton operation algorithm. Figure 1 presents an example of process described by the FSM algorithm.
Transitions (arcs) between individual states are only possible when the given state (S) is active, and the transition
condition specified in the arc is met. Furthermore, changing the state of the automate causes changes in values of
discrete output variable.
a) b)
Fig. 1. Example of process described by the FSM: a) single-pass logic algorithm, b) cyclic algorithm.
Let us have a Moore FSM determined by one of graphs presented in Figure 1. The graph starts with S1 state with
y1 output active and all other outputs deactivated. Transition from S1 to S2 will take place (or "fire") only if the S1
state will be active and the x1 signal will be driven high - in other words activation of x1 input causes FSM to change
the state from S1 to S2. In S2 state outputs y2 and y3 are active, and all other outputs, along with previously active x1,
are deactivated. The subsequent transitions between states are:
S2 to S3 when x2 is active then in S3 the y4, y5 outputs are active;
S3 to S4 when x3 is low (the tilde symbol is used as a logic negation) then in S4, the y6 output is active;
S4 to S5 when x4 is active.
Finally, the S5 state will cause the machine to reset all outputs and stop the operation.
s1
s3
s4
s5
Control
sequence
entry point
y1
x1
s2
y
2
, y3
x2
y
4
, y5
~x3
y6
x4
s2
s3
s4
s
5=
s
1
Control sequence entry point
y
1
y
2
, y
3
x1
x
2
~x
3
x4
y6
y
4
, y5
Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569 2563
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Y={y1,…,yk} is a finite set of outputs;
is the function of transition: : × ;
is the function of outputs: : ;
, is the initial state of the automata.
1.3. FSM-based Modeling of control processes
All tables should There are many ways for representing a Moore FSM [5]. In this paper, we use classic, graph
representation of the FSM. Identifying and describing the components of equation (1) is necessary for modelling the
Finite Automaton operation algorithm. Figure 1 presents an example of process described by the FSM algorithm.
Transitions (arcs) between individual states are only possible when the given state (S) is active, and the transition
condition specified in the arc is met. Furthermore, changing the state of the automate causes changes in values of
discrete output variable.
a) b)
Fig. 1. Example of process described by the FSM: a) single-pass logic algorithm, b) cyclic algorithm.
Let us have a Moore FSM determined by one of graphs presented in Figure 1. The graph starts with S1 state with
y1 output active and all other outputs deactivated. Transition from S1 to S2 will take place (or "fire") only if the S1
state will be active and the x1 signal will be driven high - in other words activation of x1 input causes FSM to change
the state from S1 to S2. In S2 state outputs y2 and y3 are active, and all other outputs, along with previously active x1,
are deactivated. The subsequent transitions between states are:
S2 to S3 when x2 is active then in S3 the y4, y5 outputs are active;
S3 to S4 when x3 is low (the tilde symbol is used as a logic negation) then in S4, the y6 output is active;
S4 to S5 when x4 is active.
Finally, the S5 state will cause the machine to reset all outputs and stop the operation.
s1
s3
s4
s5
Control
sequence
entry point
y1
x1
s2
y2, y3
x2
y4, y5
~x3
y6
x4
s2
s3
s4
s5=s1
Control sequence entry point
y1
y2, y3
x1
x2
~x3
x4
y6
y4, y5
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
2. FSM Based Control Algorithm
2.1. Control Object
As a n object to control there was taken example of chemical reactor. The purpose of this machine is to process
some prefabricated liquid substance by thermal treatment. The operation of the processor is cycle-based and
comprises five steps: filling the reactor tank with the prefabricated liquid with two speeds, heating it up, waiting for
reaction to complete, dispensing the product to three operators and cleaning the tank. The structure of the control
object is presented in Figure 2.
The system operates as follows (Figure 3). In the initial state of operation S1 the liquid tank is empty, all the
valves are closed, both of the pumps are off, and the System Ready Indicator is active. To start the system operation
the operator initiates Operation Enabled signal. In this state (S2) the System Ready Indicator is deactivated,
Operation Indicator is activated and both Low Flow Pump and High Flow Pump are enabled.
When the liquid level exceeds the Empty sensor, the Heater is turned on (S3 state). The fast filling mode ends up
when the liquid enables Nearly Full sensor. Since this moment the filling is continued slowly, with Low Flow Pump
only (S4 state). When the Full sensor produces a positive signal, the pump is stopped, and the heating is continued
until the Temp. Sensor indicates that the temperature of 60º Celsius is reached (S5 state). Then the Heater is turned
off and chemical reaction takes place for 25 seconds (S6 state). After that the system enables the Product Ready
Indicator and the Master Output Valve to allow three operators to take the product from the tank into their containers
by using manually operated Output Valves 1 to 3 (S7 state).
When the product level falls down bellow Nearly Empty sensor, the system turns on the Low-Level Warning
indicator (S8). When the Empty sensor activates, the Operation Indicator is deactivated, Master Output Valve is
closed, the Cleaning Indicator is activated, and the Rinsing Sprinkler and Cleaning Valve are enabled (S9 state).
After 10 seconds of operation the Rinsing Sprinkler is deactivated (S10 state). After 15 seconds the Cleaning Valve
is closed, Cleaning Indicator is turned off and System Ready signal is activated, which turns the system back to the
initial S1 state.
Fig. 2. Control Object Structure.
The control system identifies a number of input, internal and output signals. The input signals are:
Full, indicating the liquid in the tank is at the maximal level allowed,
Nearly Full, indicating the liquid level is close to but below the maximal level,
Full
Nearly Full
Nearly Empty
Empty
Temp. Sensor
Heater
Output Valve 1
Output Valve 2
Output Valve 3
High Flow Pump
Low Flow Pump
Operation Enabled Switch
Master Output Valve
Operation Indicator
Rinsing Sprinkler
Product Ready Indicator
Low Level Warning
Cleaning Indicator
Cleaning Valve
System Ready Indicator
2564 Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Nearly Empty, indicating that the liquid level in the tank is close to zero; additionally, it indicates that heater
is covered with the liquid and it is safe to turn it on,
Empty, indicating that there is no liquid or product in tank,
Temp. Sensor, providing information from A/D input converter, related to liquid or product temperature,
Operation Enable Switch, used by system operator to start the operation
Fig. 3. FSM graph of discrete control system operation.
In the system there are following output signals:
System Ready Indicator, to signal that the system is in the initial state and it is ready to start to operate,
Operation Indicator, to signal that the system is in the operation mode,
Product Ready Indicator, to signal the operators that the product is ready,
Low Level Warning, to signal the operators that the tank will soon run out of the product,
Cleaning Indicator, indicating that the system is in cleaning mode,
High Flow Pump, to control operation of the high-yielding pump
Low Flow Pump, to control operation of low-yielding pump,
Rinsing Sprinkler, to control operation of the sprinkler used in tank cleaning process,
Heater, to control the operation of liquid heater,
Cleaning Valve, to control operation of the valve used to empty the tank from cleaning remains,
Master Output Valve, to control operation of the main valve of the system.
There are three internal Boolean signals used in control process:
Temp60, indicating that the liquid temperature has reached required level,
Time25s, indicating that the time required for reaction to take place has elapsed,
Time10s, indicating that the time of sprinkling has elapsed,
Time25s, indicating that the time of emptying the tank of the rinsing remains has elapsed,
Operation Enable Memory, retaining information whether the process was started,
Temp. Converted, containing the temperature in a form of a real number, calculated from the value produced
by input D/A converter.
S1
System Read y Indicator
S2
Low Flow Pump
High Fl
ow Pump
Operation Indicator
Low Flow Pump
High Flow Pump
Heating
Operation Indicator
S3
Operation Ena bled
~Empty
Nearly Full
Low Flow Pump
Heating
Operation Indicator
S4
Heating
Operation Indicator
S5
Full
Operation Indicator
S6
Master Outp ut Valve
Operation Indicator
Product Read y Indicator
S7
Master Output Value
Operation Indicator
Product Read y Indicator
Low Level Warning
S8
Cleaning Valve
Rinsing Sprinkler
Cleaning Indicator
S9
Cleaning Valve
Cleaning Indicator
S10
Temp60
Time25s
Nearly Empty
Empty
Time10s
Time15s
Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569 2565
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Nearly Empty, indicating that the liquid level in the tank is close to zero; additionally, it indicates that heater
is covered with the liquid and it is safe to turn it on,
Empty, indicating that there is no liquid or product in tank,
Temp. Sensor, providing information from A/D input converter, related to liquid or product temperature,
Operation Enable Switch, used by system operator to start the operation
Fig. 3. FSM graph of discrete control system operation.
In the system there are following output signals:
System Ready Indicator, to signal that the system is in the initial state and it is ready to start to operate,
Operation Indicator, to signal that the system is in the operation mode,
Product Ready Indicator, to signal the operators that the product is ready,
Low Level Warning, to signal the operators that the tank will soon run out of the product,
Cleaning Indicator, indicating that the system is in cleaning mode,
High Flow Pump, to control operation of the high-yielding pump
Low Flow Pump, to control operation of low-yielding pump,
Rinsing Sprinkler, to control operation of the sprinkler used in tank cleaning process,
Heater, to control the operation of liquid heater,
Cleaning Valve, to control operation of the valve used to empty the tank from cleaning remains,
Master Output Valve, to control operation of the main valve of the system.
There are three internal Boolean signals used in control process:
Temp60, indicating that the liquid temperature has reached required level,
Time25s, indicating that the time required for reaction to take place has elapsed,
Time10s, indicating that the time of sprinkling has elapsed,
Time25s, indicating that the time of emptying the tank of the rinsing remains has elapsed,
Operation Enable Memory, retaining information whether the process was started,
Temp. Converted, containing the temperature in a form of a real number, calculated from the value produced
by input D/A converter.
S1
System Read y Indicator
S2
Low Flow Pump
High Flow Pump
Operation Indicator
Low Flow Pump
High Flow Pump
Heating
Operation Indicator
S3
Operation Ena bled
~Empty
Nearly Full
Low Flow Pump
Heating
Operation Indicator
S4
Heating
Operation Indicator
S5
Full
Operation Indicator
S6
Master Outp ut Valve
Operation Indicator
Product Read y Indicator
S7
Master Output Value
Operation Indicator
Product Read y Indicator
Low Level Warning
S8
Cleaning Valve
Rinsing Sprinkler
Cleaning Indicator
S9
Cleaning Valve
Cleaning Indicator
S10
Temp60
Time25s
Nearly Empty
Empty
Time10s
Time15s
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Table 1. Output signals values in subsequent FSM states of modeled control process.
Output signals
S1
S2
S3
S4
S5
S6
S7
S8
S9
S10
S11=S1
Low Flow Pump
0
1
1
1
0
0
0
0
0
0
0
High Flow Pump
0
1
1
0
0
0
0
0
0
0
0
Heating
0
0
1
1
1
0
0
0
0
0
0
Master Output Valve
0
0
0
0
0
0
1
1
0
0
0
Cleaning Valve
0
0
0
0
0
0
0
0
1
1
0
Low Level Warning
0
0
0
0
0
0
0
1
0
0
0
System Ready Indicator
1
0
0
0
0
0
0
0
0
0
1
Operation Indicator
0
1
1
1
1
1
1
1
0
0
0
Product Ready Indicator
0
0
0
0
0
0
0
0
0
0
1
Cleaning Indicator
0
0
0
0
0
0
0
0
1
1
0
Cleaning Sprinkler
0
0
0
0
0
0
1
1
0
0
0
2.2. FSM Model of Control Algorithm
Control Algorithms can be modeled in a number of ways. In case of simple control tasks, the direct programming
in LAD language is very efficient and fast. As the complexity of the problem grows, it is more difficult to produce
the satisfactory solution quickly, despite all mechanisms of modern engineering software designed to take as much
of work from the engineer as possible. But in many cases the common and typical approach leads to creation of
programs that at some point of operation prove to contain errors. There is promoted a solution to problem solving
and program designing known as Win-Win, where engineers seek for acceptable compromises, but again, in
industrial automation systems usually there is no place for any program malfunction, as it can lead to significant
damage and loss. Therefore, engineers seek for solutions allowing to design control algorithms with no compromises
and uncertainty.
Finite State Machine modeling is a technique that proved to be one of very efficient ones in this field.
To efficiently design the FSM model of a process it is necessary to identify states that the modeled system can be,
to determine input and output signals and to assign those to states and transitions.
In Figure 3 there is presented the FSM graph of control for the example system. As the system is designed to
operate in cycles, the graph forms a circle.
In the S1 state the only one active signal is System Ready Indicator. The event that makes the system to change
the state to S2 is Operation Enable input signal. When the signal is detected by control system, the machine changes
the state to S2, where both High and Low Flow Pump are activated, and Operation Indicator is on. When the signal
from Empty sensor becomes inactive (as the liquid fills up the tank), the Heating output is activated, as the heater is
covered by liquid (S3). The heater is activated as soon as possible to save time necessary to achieve required
temperature. When the control system acquires the signal from Nearly Full sensor, it slows down the process of
filing by turning off High Flow Pump and leaving Low Flow Pump on (S4). When the Full signal comes, the system
turns of the pump and keeps heating up the tank (S5) until the sensor of temperature signals the required value of 60º
Celsius (S6).
The system remains in this state for required time of 25 seconds and after this time it signals to the operators that
the reaction product is ready and opens the master valve to let them to use the product (S7). When the tank becomes
nearly empty, the system turns on the Low-Level Warning (S8) to inform operators in advance to not to plan any
vast usage of the product. When the tank runs out of product, the system switches to cleaning mode, by starting the
Rinsing Sprinkler, turning on Cleaning Indicator and opening Cleaning Valve (S9). After 10 seconds the sprinkler is
turned off (S10) and after another 15 seconds the Cleaning Valve is closed, Cleaning Indicator is turned off and the
system returns to the initial state S1.
Table 1 presents values of the output signals in the subsequent S1 to S10 states of FSM model.
3. LAD Language Implementation
In this chapter there are presented results of implementation of the control algorithm shown in Fig. 3. The
algorithm was implemented in Step7 in TIA Portal engineering software by Siemens. The algorithm was
implemented and tested on S7-1200 PLC (CPU 1214C). The system input, internal and output data table is presented
2566 Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
in Fig. 4. It contains all the signals described in section 2.1. In addition, there is presented one project-specific
variable (Tag), State token (line 26). It is used to identify the state the system is in at the given moment.
Fig. 4. A set of control system data - Tag table.
The project uses Siemens-specific LAD program feature - a startup program block (Fig. 5). The block is executed
once, at the beginning of the whole program execution cycle. It is used to set the State token variable to 1. This step
ensures proper execution of program in case that the PLC is stopped for some reason and then started without
resetting the variables.
Fig. 5. Startup program block.
Fig. 6 presents Network 2 responsible for implementation of functionality of the S1 state. If the State Token is 1
and Operation Enabled Switch to provide the positive signal, system sets the Operation Enabled Memory and
changes the State Token to 2. Additionally, when the Operation Enabled Memory variable changes state to 1,
program deactivates the System Ready Indicator.
Fig. 6. Network 1 implementing S1 State functionality.
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Fig. 7. Networks 2 to 4 implementing functionality of S2 to S4.
Fig. 7 shows Network 2, 3 and 4, implementing functionality of S2 to S4 states, as described in section 2.2. Fig.
8. presents Network 5 responsible for functionality of S5 state and Network 6, which contains two branches. First
one is responsible for conversion of the INT value obtained from D/A converter to REAL type value, which is then
scaled from 215 range to 0-100 range. The other branch compares the normalized value to the required level of 60ºC.
Fig. 8. Networks 5 and 6 implementing functionality of S5 state and handling the A/D converter readout.
Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569 2567
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
in Fig. 4. It contains all the signals described in section 2.1. In addition, there is presented one project-specific
variable (Tag), State token (line 26). It is used to identify the state the system is in at the given moment.
Fig. 4. A set of control system data - Tag table.
The project uses Siemens-specific LAD program feature - a startup program block (Fig. 5). The block is executed
once, at the beginning of the whole program execution cycle. It is used to set the State token variable to 1. This step
ensures proper execution of program in case that the PLC is stopped for some reason and then started without
resetting the variables.
Fig. 5. Startup program block.
Fig. 6 presents Network 2 responsible for implementation of functionality of the S1 state. If the State Token is 1
and Operation Enabled Switch to provide the positive signal, system sets the Operation Enabled Memory and
changes the State Token to 2. Additionally, when the Operation Enabled Memory variable changes state to 1,
program deactivates the System Ready Indicator.
Fig. 6. Network 1 implementing S1 State functionality.
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Fig. 7. Networks 2 to 4 implementing functionality of S2 to S4.
Fig. 7 shows Network 2, 3 and 4, implementing functionality of S2 to S4 states, as described in section 2.2. Fig.
8. presents Network 5 responsible for functionality of S5 state and Network 6, which contains two branches. First
one is responsible for conversion of the INT value obtained from D/A converter to REAL type value, which is then
scaled from 215 range to 0-100 range. The other branch compares the normalized value to the required level of 60ºC.
Fig. 8. Networks 5 and 6 implementing functionality of S5 state and handling the A/D converter readout.
2568 Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Fig. 9. Networks 7 to 11 implementing functionality of S6 to S10 states and Network 12 responsible for returning the system to the S1 state.
Wojciech Zając et al. / Procedia Computer Science 159 (2019) 25602569 2569
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
Fig. 9. Networks 7 to 11 implementing functionality of S6 to S10 states and Network 12 responsible for returning the system to the S1 state.
Zając W., Andrzejewski G., Krzywicki K., Królikowski T./ Procedia Computer Science 00 (2019) 000000
4. Conclusion and future work
Implementation example showed that new generation engineering software allows to model efficiently examples
of discrete control algorithms described by FSM specification. Implemented algorithm was tested for unexpected
changes in input signal and it proved to work efficiently and safely. The algorithm implementation produces clear
and understandable code which is easy to maintain and develop.
Future work will be to apply the FSM modeling method to more complex control problems with concurrent tasks
and crossed dependencies. It would be interesting to examine deeper the debugging mechanisms of presented
software.
References
[1] Kopetz, H. (2011). “Real-time systems: design principles for distributed embedded applications”. Springer Science & Business Media.
[2] Barkalov, A., Titarenko, L., Andrzejewski, G., Krzywicki, K., & Kolopienczyk, M. (2017). „Fault detection variants of the CloudBus protocol
for IoT distributed embedded systems”. Advances in Electrical and Computer Engineering, 17 (2): 3-11.
[3] Riccobene, E., Scandurra, P., Rosti, A., & Bocchio, S. (2006). “A model-driven design environment for embedded systems”. In 2006 43rd
ACM/IEEE Design Automation Conference (pp. 915-918). IEEE.
[4] Liebel, G., Marko, N., Tichy, M., Leitner, A., & Hansson, J. (2018). “Model-based engineering in the embedded systems domain: an
industrial survey on the state-of-practice”. Software & Systems Modeling, 17 (1): 91-113.
[5] Barkalov, A., and Titarenko, L. (2009). “Logic synthesis for FSM-based control units” (Vol. 53). Berlin: Springer.
[6] Conway, J. H. (2012). “Regular algebra and finite machines”. Courier Corporation.
[7] Barkalov, A., Titarenko, L., Mielcarek, K., Krzywicki, K. & Zajac, W. (2019). ”Decreasing number of LUTs for Moore FSMs”. In 2019
MIXDES-26th International Conference" Mixed Design of Integrated Circuits and Systems. IEEE.
[8] Babakov, R. M., & Barkalov, A. A. (2016). “Algebraic interpretation of a microprogram finite-state machine with datapath of transitions”.
Cybernetics and Systems Analysis, 52 (2): 191-198.
[9] Coyle, F. P., & Thornton, M. A. (2005). “From UML to HDL: a model driven architectural approach to hardware-software co-design”. In
Information systems: new generations conference (ISNG) (1): 88-93.
[10] Gomes, L., Moutinho, F., Pereira, F., Ribeiro, J., Costa, A., & Barros, J. P. (2014). “Extending input-output place-transition Petri nets for
distributed controller systems development”. In 2014 International Conference on Mechatronics and Control (ICMC) (pp. 1099-1104). IEEE.
[11] Adamski, M. A., Karatkevich, A., & Wegrzyn, M. (2005). „Design of embedded control systems” (Vol. 267). Heidelberg: Springer.
[12] Grobelna, I., Wiśniewski, R., Grobelny, M., & Wiśniewska, M. (2016). „Design and verification of real-life processes with application of
Petri nets”. IEEE Transactions on Systems, Man, and Cybernetics: Systems, 47 (11): 2856-2869.
[13] Lindlar, F., & Zimmermann, A. (2008). “A code generation tool for embedded automotive systems based on finite state machines”. In 2008
6th IEEE International Conference on Industrial Informatics (pp. 1539-1544). IEEE.
[14] Witsch, D., & Vogel-Heuser, B. (2011). “PLC-statecharts: An approach to integrate UML-statecharts in open-loop control engineering
aspects on behavioral semantics and model-checking”. IFAC Proceedings Volumes, 44 (1): 7866-7872.
[15] P. Stepien, B. Balasz, T. Szatkiewicz, T. Krolikowski. (2006) „Application of Artificial Intelligence Algorithms for the Modeling of the
Surfaces of Abrasive Grains” 4th International Industrial Simulation Conference 2006, ISC 2006: 265-277.
[16] B. Balasz, T. Krolikowski. (2007) “Advanced kinematic-geometrical model of grinding processes” 5th International Industrial Simulation
Conference 2007, ISC 2007: 137-141.
[17] S.V. Konstantinov, A.I. Diveev, G.I. Balandina, A.A. Baryshnikov (2019) “Comparative Research of Random Search Algorithms and
Evolutionary Algorithms for the Optimal Control Problem of the Mobile Robot” Procedia Computer Science 150: 462–470
[18] P. Grachev, I. Lobanov, I. Smetannikov., A. Filchenkov (2017) “Neural network for synthesizing deterministic finite automataProcedia
Computer Science 119: 73–82.
[19] Khaled M. Khalil, M. Abdel-Aziz, Taymour T. Nazmy, Abdel-Badeeh M. Salem (2015) “MLIMAS: A Framework for Machine Learning in
Interactive Multi-Agent Systems” Procedia Computer Science 65: 827 835.
[20] Siddhartha Pratim Dasa, Anjan Kumar Talukdarb, Kandarpa Kumar Sarma (2015) “Sign Language Recognition using Facial Expression
Procedia Computer Science 58: 210 216.
... Designers of digital systems use various approaches to describe and/or visualize the behaviour and logic of the control unit, making it easier to understand how this component works and providing its formal synthesis. Transition graphs, state tables, flow charts, dependency diagrams, state diagrams, Petri nets and many combinations of graph schemes can be used for the description of behavioural layer components of digital systems (Ledermann and Schmalstieg, 2005;Zajac et al., 2019). Other examples include specific dedicated languages. ...
... This method has some disadvantages (Olsson, 2016), however, according to many professionals, e.g., Sklyarov et al. (1998) or Adrego da Rocha (1999), it has been a technique of great importance in the last decades, because it provides a general mathematical model to describe a given unit and due to its ease of visualization. Besides, the FSM abstraction seemed to be one of the main and simplest methods to model a system where inputs cause the system to transition to a particular state (Zhang et al., 2010;Zajac et al., 2019;Young, 2015;Ferdania et al., 2021). ...
Article
Full-text available
The paper presents the concept of a control unit, i.e., a scenario player, for interactive training pilots in flight simulators. This scenario player is modelled as a hierarchy of finite state machines. Such an approach makes it possible to separate the details of an augmented reality display device which is used in training, from the core module of the system, responsible for contextual organization of the content. Therefore, the first contribution of this paper is the mathematical model of the scenario player as a universal formulation of the self-trained control unit for interactive learning systems, which is applicable in a variety of situations not limited solely to flight simulator related procedures. The second contribution is an experimental verification achieved by extensive simulations of the model, which proves that the proposed approach is capable to properly self-organize details of the context information by tracing preferences of the end users. For that latter purpose, the original algorithm is derived from statistical analysis, including Bayesian inference. The whole approach is illustrated by a real application of training the preflight procedure for the captain of the Boeing 737 aircraft in a flight simulator.
... Design of digital control systems is an area developed since many years and it is nowadays of even more interest to researchers as the one of key areas of the Industry 4.0 revolution [1][2][3][4][5][6]. The research areas cover many aspects of systems design and optimization, such as system design effectiveness [7][8][9][10][11][12], optimization of systems synthesis 1 mechanisms [13][14][15][16][17][18], design-effective systems modeling [19][20][21][22][23][24] and applying PLC engineering software to solve specific control problems [25][26][27][28][29][30][31][32][33][34]. ...
Article
Full-text available
Design of digital control systems is often based on use of Programmable Logic Controllers (PLC). Such devices offer a broad variety of functions that can be organized in blocks independently or in hierarchical structures. Such an organization can lead to cumulative delays in reaction time of digital outputs of the control system. In the paper there are described results of research aimed to determine dependencies of various aspects of designing programs for Programmable Logic Control devices influencing the effective time of reaction of digital outputs. Research method is presented, assumptions are made, and experiments are described and discussed. Observations of system behavior are presented for selected control tasks and different control situations. Research results are presented and discussed, conclusion is drawn, and areas of future work are identified.
... The model of Mealy FSM [9] is one of the basic models used in the designing circuits of sequential devices [9,10]. Due to it, there are a large number of methods for synthesizing Mealy FSM logic circuits [11,12]. One of the main goals of these methods is to reach optimal values of the basic characteristics of resulting FSM circuits [10,13]. ...
Article
Full-text available
A method is proposed for optimizing circuits of sequential devices which are used in cyber-physical systems (CPSs) implemented using field programmable gate arrays (FPGAs). The optimizing hardware is a very important problem connected with implementing digital parts of CPSs. In this article, we discuss a case when Mealy finite state machines (FSMs) represent behaviour of sequential devices. The proposed method is aimed at optimization of FSM circuits implemented with look-up table (LUT) elements of FPGA chip. The method aims to reduce the LUT count of Mealy FSMs with extended state codes. The method is based on finding a partition of the set of internal states by classes of compatible states. To reduce LUT count, we propose a special kind of state codes named composite state codes. The composite codes include two parts. The first part includes the binary codes of states as elements of some partition class. The second part consists of the code of corresponding partition class. Using composite state codes allows us to obtain FPGA-based FSM circuits with exactly two levels of logic. If some conditions hold, then any FSM function from the first level is implemented by a single LUT. The second level is represented as a network of multiplexers. Each multiplexer generates either an FSM output or input memory function. An example of synthesis is shown. The experiments prove that the proposed approach allows us to reduce hardware compared with two methods from Vivado, JEDI-based FSMs, and extended state assignment. Depending on the complexity of an FSM, the LUT count is reduced on average from 15.46 to 68.59 percent. The advantages of the proposed approach grow with the growth of FSM complexness. An additional positive effect of the proposed method is a decrease in the latency time.
... medicine, banking, military, industrial processes or transport. For that reason, finding the optimal model for further analysis of collected data, is very important task [1,2,3]. The system solutions integrating water and inland transport that are currently in place support the complementarity of the different transport modes and optimum utilisation of their infrastructure resources, they satisfy the requirements of transport users with respect to safe and effective movement, and they contribute to environmental protection. ...
Article
Full-text available
The paper addresses the use of integrated IT systems in integrated transport management, and in particular the use of the Port Community System in communication between an integrated transport operator and individual carriers or loaders in the organisation and execution of specific transport functions where a large part of cargo operations are performed in seaports. Its objective is to present the opportunities offered by the PCS for the integration of actors in integrated cargo transport in the context of ensuring safe and efficient transport services. The paper presents the key aspects of the ongoing transport integration process, and most importantly, the role of a port as an integrator of organisation and execution of processes necessary for cargo handling. The capabilities and functionality of the PCS system are analysed, and the relational networks offered by the system are presented. Additionally, emphasis is placed on the urgent need to fully implement a single harmonised IT system across Polish seaports.
Article
Full-text available
The article is based on surveys carried out among students of selected technical universities in the West Pomeranian Voivodeship (Poland). It aims to determine students' knowledge of new tools such as ChatGPT, the use of which raises a discussion among the scientific community and beyond. According to some groups it can support learning, whereas others claim that it can limit problem-solving skills and creative thinking. Three hundred students of engineering and master's studies participated in the study. The results of the conducted research show the directions of the use of ChatGPT by students and their interest in this tool.
Article
Full-text available
The article discusses a multi-criteria optimization algorithm, developed for the estimation of the quality of scientific activity. The presented solution is based on a modified knapsack algorithm, the novelty of the approach relies on extended data sorting-with splitting apparently equivalent data blocks. The criteria of the algorithm are based on the regulations in force in Poland, but it is possible to easily adapt the methodology to the requirements for scientists in other countries and for other tasks requiring multi-criteria optimization
Article
Full-text available
This project aims to develop an innovative, open multi-domain early warning platform to monitor adverse events in water bodies and streams, such as salinity increase, acidification, temperature rise, chlorophyll content, etc. The platform involves monitoring dispersed measurement points, acquiring data from measurement stations in the form of autonomous buoys equipped with sensor sets tailored to individual needs. The platform enables remote and distributed monitoring of key locations in lakes and rivers for stakeholders, such as local governments, water managers, and businesses impacting water reservoirs. The open data aggregation system and the universal technological solution in the form of a measurement buoy will allow the acquisition of desired chemical and biological parameters, in line with the Water Framework Directive, using market-available and industry-recognized sensors. The planned buoy construction will accommodate both wired sensors directly connected to the measurement station and data acquisition from locally dispersed measurement points communicating wirelessly with the measurement station-buoy. With built-in machine learning and data analysis mechanisms, the platform will utilize a minimal number of measurement stations to achieve the desired level of data acquisition. The dispersion of sensors and the autonomy of measurement stations will ensure flexibility and scalability of measurements. Abstract This project aims to develop an innovative, open multi-domain early warning platform to monitor adverse events in water bodies and streams, such as salinity increase, acidification, temperature rise, chlorophyll content, etc. The platform involves monitoring dispersed measurement points, acquiring data from measurement stations in the form of autonomous buoys equipped with sensor sets tailored to individual needs. The platform enables remote and distributed monitoring of key locations in lakes and rivers for stakeholders, such as local governments, water managers, and businesses impacting water reservoirs. The open data aggregation system and the universal technological solution in the form of a measurement buoy will allow the acquisition of desired chemical and biological parameters, in line with the Water Framework Directive, using market-available and industry-recognized sensors. The planned buoy construction will accommodate both wired sensors directly connected to the measurement station and data acquisition from locally dispersed measurement points communicating wirelessly with the measurement station-buoy. With built-in machine learning and data analysis mechanisms, the platform will utilize a minimal number of measurement stations to achieve the desired level of data acquisition. The dispersion of sensors and the autonomy of measurement stations will ensure flexibility and scalability of measurements.
Article
Full-text available
The aim of this paper was to determine the roughness and Vickers hardness of popular composite materials used for direct tooth fillings. The tests were carried out on the surfaces of samples previously polished with traditional silicone polishing rubbers and discs used in dentistry. The testing methodology and software used for statistical analysis is important to the validity of engineering tests. Measurement systems use sophisticated computer algorithms that are part of the equipment. Analysis of measurement data requires very complex algorithms often based on artificial intelligence. A model and procedure were also prepared to simulate the composite itself under near real-world conditions.
Article
Full-text available
An experimental comparison of evolutionary algorithms and random search algorithms for the optimal control problem is carried out. The problem is solved separately by several representatives of each type of algorithms. The simulation is performed on a mobile robot model. The results of each algorithm performance are compared according to the best found value of the fitness function, the mean value and the standard deviation.
Article
Full-text available
Deterministic finite automata are widely used in control systems: from abstract protocols such as TCP to mechanical devices such as elevators or traffic lights. Some of these systems are quite complex and can be defined only in terms of formal language theory. In this paper, we propose new approach for synthesizing finite automata from a dictionary of some language that uses neural networks. The results show that the proposed approach works correctly and quickly for automata with up to six states and four characters in the alphabet. For larger automata, the neural network suffers from the vanishing gradient problem, which is a big topic for further research.
Article
Full-text available
Distributed embedded systems have become larger, more complex and complicated. More often, such systems operate accordingly to the IoT or Industry 4.0 concept. However, large number of end modules operating in the system leads to a significant load and consequently, to an overload of the communication interfaces. The CloudBus protocol is one of the methods which is used for data exchange and concurrent process synchronization in the distributed systems. It allows the significant savings in the amount of transmitted data between end modules, especially when compared with the other protocols used in the industry. Nevertheless, basic version of the protocol does not protect against the system failure in the event of failure of one of the nodes. This paper proposes four novel variants of the CloudBus protocol, which allow the fault detection. The comparison and performance analysis was executed for all proposed CloudBus variants. The verification and behavior analysis of the distributed systems were performed on SoC hardware research platform. Furthermore, a simple test application was proposed.
Article
Full-text available
Model-based engineering (MBE) aims at increasing the effectiveness of engineering by using models as important artifacts in the development process. While empirical studies on the use and the effects of MBE in industry exist, only few of them target the embedded systems domain. We contribute to the body of knowledge with an empirical study on the use and the assessment of MBE in that particular domain. The goal of this study is to assess the current state-of-practice and the challenges the embedded systems domain is facing due to shortcomings with MBE. We collected quantitative data from 113 subjects, mostly professionals working with MBE, using an online survey. The collected data spans different aspects of MBE, such as the used modeling languages, tools, notations, effects of MBE introduction, or shortcomings of MBE. Our main findings are that MBE is used by a majority of all participants in the embedded systems domain, mainly for simulation, code generation, and documentation. Reported positive effects of MBE are higher quality and improved reusability. Main shortcomings are interoperability difficulties between MBE tools, high training effort for developers and usability issues. Our study offers valuable insights into the current industrial practice and can guide future research in the fields of systems modeling and embedded systems.
Book
A set of original results in the ?eld of high-level design of logical control devices and systems is presented in this book. These concern different aspects of such important and long-term design problems, including the following, which seem to be the main ones. First, the behavior of a device under design must be described properly, and some adequate formal language should be chosen for that. Second, effective algorithmsshouldbeusedforcheckingtheprepareddescriptionforcorrectness, foritssyntacticandsemanticveri?cationattheinitialbehaviorlevel.Third,the problem of logic circuit implementation must be solved using some concrete technological base; ef?cient methods of logic synthesis, test, and veri?cation should be developed for that. Fourth, the task of the communication between the control device and controlled objects (and maybe between different control devices)waitsforitssolution.Alltheseproblemsarehardenoughandcannotbe successfully solved without ef?cient methods and algorithms oriented toward computer implementation. Some of these are described in this book. The languages used for behavior description have been descended usually from two well-known abstract models which became classic: Petri nets and ?nite state machines (FSMs). Anyhow, more detailed versions are developed and described in the book, which enable to give more complete information concerningspeci?cqualitiesoftheregardedsystems.Forexample,themodelof parallelautomatonispresented,whichunliketheconventional?niteautomaton can be placed simultaneously into several places, calledpartial. As a base for circuit implementation of control algorithms, FPGA is accepted in majority of cases.
Article
A new principle is proposed for the representation of functions of a microprogram finite state machine with datapath of transitions in the form of a set of some algebras. The principle consists of partitioning the set of tuples forming transition and output functions into subsets each of which is interpreted as a partial function from the signature of the corresponding algebra.
Article
This paper focuses on the design and verification methods of distributed logic controllers supervising real-life processes. Such systems have to be designed very carefully and precisely in order to operate flawlessly and to meet user needs. We propose to use interpreted Petri nets as modeling formalism. A new design flow of distributed logic controllers is introduced. The methodology covers the development process from the specification stage to the final implementation of the controller in the distributed devices. In the proposed solution, the system is decomposed into separate modules that form a distributed system. Furthermore, the specification (before and after the decomposition process) is formally verified with the application of the model checking technique against predefined behavioral requirements. Finally, the system is implemented in real devices. The usage of formal methods and double model checking ensure the correct functionality of the designed distributed logic controller. The theoretical approach is supplemented by the practical experiments. Furthermore, the proposed idea is illustrated by an example of a smart home system.
Article
Grinding is a very complex process depending on large number of correlated factors. In precise grinding it is very important to select optimal conditions and to preserve stable conditions during the process. The model of grinding process comprise usually a few elementary models: model of a grain, model of a grinding wheel topography, model of surface roughness, model of the process kinematics, model of a chip formation, forces and energy, thermal and vibration. The author of this paper undertook a study on developing algorithms and programs for complex simulation of grinding process. This paper presents assumptions, schemes, examples of models, and results of the advanced kinematic-geometrical model of grinding processes.